2018/04/30 - Amazon WorkSpaces - 9 new3 updated api methods
Changes Update workspaces client to latest version
Associates the specified IP access control group with the specified directory.
See also: AWS API Documentation
Request Syntax
client.associate_ip_groups( DirectoryId='string', GroupIds=[ 'string', ] )
string
[REQUIRED]
The ID of the directory.
list
[REQUIRED]
The IDs of one or more IP access control groups.
(string) --
dict
Response Syntax
{}
Response Structure
(dict) --
Adds one or more rules to the specified IP access control group.
This action gives users permission to access their WorkSpaces from the CIDR address ranges specified in the rules.
See also: AWS API Documentation
Request Syntax
client.authorize_ip_rules( GroupId='string', UserRules=[ { 'ipRule': 'string', 'ruleDesc': 'string' }, ] )
string
[REQUIRED]
The ID of the group.
list
[REQUIRED]
The rules to add to the group.
(dict) --
Information about a rule for an IP access control group.
ipRule (string) --
The IP address range, in CIDR notation.
ruleDesc (string) --
The description.
dict
Response Syntax
{}
Response Structure
(dict) --
Disassociates the specified IP access control group from the specified directory.
See also: AWS API Documentation
Request Syntax
client.disassociate_ip_groups( DirectoryId='string', GroupIds=[ 'string', ] )
string
[REQUIRED]
The ID of the directory.
list
[REQUIRED]
The IDs of one or more IP access control groups.
(string) --
dict
Response Syntax
{}
Response Structure
(dict) --
Deletes the specified IP access control group.
You cannot delete an IP access control group that is associated with a directory.
See also: AWS API Documentation
Request Syntax
client.delete_ip_group( GroupId='string' )
string
[REQUIRED]
The ID of the IP access control group.
dict
Response Syntax
{}
Response Structure
(dict) --
Creates an IP access control group.
An IP access control group provides you with the ability to control the IP addresses from which users are allowed to access their WorkSpaces. To specify the CIDR address ranges, add rules to your IP access control group and then associate the group with your directory. You can add rules when you create the group or at any time using AuthorizeIpRules.
There is a default IP access control group associated with your directory. If you don't associate an IP access control group with your directory, the default group is used. The default group includes a default rule that allows users to access their WorkSpaces from anywhere. You cannot modify the default IP access control group for your directory.
See also: AWS API Documentation
Request Syntax
client.create_ip_group( GroupName='string', GroupDesc='string', UserRules=[ { 'ipRule': 'string', 'ruleDesc': 'string' }, ] )
string
[REQUIRED]
The name of the group.
string
The description of the group.
list
The rules to add to the group.
(dict) --
Information about a rule for an IP access control group.
ipRule (string) --
The IP address range, in CIDR notation.
ruleDesc (string) --
The description.
dict
Response Syntax
{ 'GroupId': 'string' }
Response Structure
(dict) --
GroupId (string) --
The ID of the group.
Describes one or more of your IP access control groups.
See also: AWS API Documentation
Request Syntax
client.describe_ip_groups( GroupIds=[ 'string', ], NextToken='string', MaxResults=123 )
list
The IDs of one or more IP access control groups.
(string) --
string
The token for the next set of results. (You received this token from a previous call.)
integer
The maximum number of items to return.
dict
Response Syntax
{ 'Result': [ { 'groupId': 'string', 'groupName': 'string', 'groupDesc': 'string', 'userRules': [ { 'ipRule': 'string', 'ruleDesc': 'string' }, ] }, ], 'NextToken': 'string' }
Response Structure
(dict) --
Result (list) --
Information about the IP access control groups.
(dict) --
Information about an IP access control group.
groupId (string) --
The ID of the group.
groupName (string) --
The name of the group.
groupDesc (string) --
The description of the group.
userRules (list) --
The rules.
(dict) --
Information about a rule for an IP access control group.
ipRule (string) --
The IP address range, in CIDR notation.
ruleDesc (string) --
The description.
NextToken (string) --
The token to use to retrieve the next set of results, or null if there are no more results available. This token is valid for one day and must be used within that time frame.
Sets the state of the specified WorkSpace.
To maintain a WorkSpace without being interrupted, set the WorkSpace state to ADMIN_MAINTENANCE. WorkSpaces in this state do not respond to requests to reboot, stop, start, or rebuild. An AutoStop WorkSpace in this state is not stopped. Users can log into a WorkSpace in the ADMIN_MAINTENANCE state.
See also: AWS API Documentation
Request Syntax
client.modify_workspace_state( WorkspaceId='string', WorkspaceState='AVAILABLE'|'ADMIN_MAINTENANCE' )
string
[REQUIRED]
The ID of the WorkSpace.
string
[REQUIRED]
The WorkSpace state.
dict
Response Syntax
{}
Response Structure
(dict) --
Replaces the current rules of the specified IP access control group with the specified rules.
See also: AWS API Documentation
Request Syntax
client.update_rules_of_ip_group( GroupId='string', UserRules=[ { 'ipRule': 'string', 'ruleDesc': 'string' }, ] )
string
[REQUIRED]
The ID of the group.
list
[REQUIRED]
One or more rules.
(dict) --
Information about a rule for an IP access control group.
ipRule (string) --
The IP address range, in CIDR notation.
ruleDesc (string) --
The description.
dict
Response Syntax
{}
Response Structure
(dict) --
Removes one or more rules from the specified IP access control group.
See also: AWS API Documentation
Request Syntax
client.revoke_ip_rules( GroupId='string', UserRules=[ 'string', ] )
string
[REQUIRED]
The ID of the group.
list
[REQUIRED]
The rules to remove from the group.
(string) --
dict
Response Syntax
{}
Response Structure
(dict) --
{'PendingRequests': {'State': {'ADMIN_MAINTENANCE'}}}
Creates one or more WorkSpaces.
This operation is asynchronous and returns before the WorkSpaces are created.
See also: AWS API Documentation
Request Syntax
client.create_workspaces( Workspaces=[ { 'DirectoryId': 'string', 'UserName': 'string', 'BundleId': 'string', 'VolumeEncryptionKey': 'string', 'UserVolumeEncryptionEnabled': True|False, 'RootVolumeEncryptionEnabled': True|False, 'WorkspaceProperties': { 'RunningMode': 'AUTO_STOP'|'ALWAYS_ON', 'RunningModeAutoStopTimeoutInMinutes': 123, 'RootVolumeSizeGib': 123, 'UserVolumeSizeGib': 123, 'ComputeTypeName': 'VALUE'|'STANDARD'|'PERFORMANCE'|'POWER'|'GRAPHICS' }, 'Tags': [ { 'Key': 'string', 'Value': 'string' }, ] }, ] )
list
[REQUIRED]
The WorkSpaces to create. You can specify up to 25 WorkSpaces.
(dict) --
Information used to create a WorkSpace.
DirectoryId (string) -- [REQUIRED]
The identifier of the AWS Directory Service directory for the WorkSpace. You can use DescribeWorkspaceDirectories to list the available directories.
UserName (string) -- [REQUIRED]
The username of the user for the WorkSpace. This username must exist in the AWS Directory Service directory for the WorkSpace.
BundleId (string) -- [REQUIRED]
The identifier of the bundle for the WorkSpace. You can use DescribeWorkspaceBundles to list the available bundles.
VolumeEncryptionKey (string) --
The KMS key used to encrypt data stored on your WorkSpace.
UserVolumeEncryptionEnabled (boolean) --
Indicates whether the data stored on the user volume is encrypted.
RootVolumeEncryptionEnabled (boolean) --
Indicates whether the data stored on the root volume is encrypted.
WorkspaceProperties (dict) --
The WorkSpace properties.
RunningMode (string) --
The running mode. For more information, see Manage the WorkSpace Running Mode.
RunningModeAutoStopTimeoutInMinutes (integer) --
The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60 minute intervals.
RootVolumeSizeGib (integer) --
The size of the root volume.
UserVolumeSizeGib (integer) --
The size of the user storage.
ComputeTypeName (string) --
The compute type. For more information, see Amazon WorkSpaces Bundles.
Tags (list) --
The tags for the WorkSpace.
(dict) --
Information about a tag.
Key (string) -- [REQUIRED]
The key of the tag.
Value (string) --
The value of the tag.
dict
Response Syntax
{ 'FailedRequests': [ { 'WorkspaceRequest': { 'DirectoryId': 'string', 'UserName': 'string', 'BundleId': 'string', 'VolumeEncryptionKey': 'string', 'UserVolumeEncryptionEnabled': True|False, 'RootVolumeEncryptionEnabled': True|False, 'WorkspaceProperties': { 'RunningMode': 'AUTO_STOP'|'ALWAYS_ON', 'RunningModeAutoStopTimeoutInMinutes': 123, 'RootVolumeSizeGib': 123, 'UserVolumeSizeGib': 123, 'ComputeTypeName': 'VALUE'|'STANDARD'|'PERFORMANCE'|'POWER'|'GRAPHICS' }, 'Tags': [ { 'Key': 'string', 'Value': 'string' }, ] }, 'ErrorCode': 'string', 'ErrorMessage': 'string' }, ], 'PendingRequests': [ { 'WorkspaceId': 'string', 'DirectoryId': 'string', 'UserName': 'string', 'IpAddress': 'string', 'State': 'PENDING'|'AVAILABLE'|'IMPAIRED'|'UNHEALTHY'|'REBOOTING'|'STARTING'|'REBUILDING'|'MAINTENANCE'|'ADMIN_MAINTENANCE'|'TERMINATING'|'TERMINATED'|'SUSPENDED'|'UPDATING'|'STOPPING'|'STOPPED'|'ERROR', 'BundleId': 'string', 'SubnetId': 'string', 'ErrorMessage': 'string', 'ErrorCode': 'string', 'ComputerName': 'string', 'VolumeEncryptionKey': 'string', 'UserVolumeEncryptionEnabled': True|False, 'RootVolumeEncryptionEnabled': True|False, 'WorkspaceProperties': { 'RunningMode': 'AUTO_STOP'|'ALWAYS_ON', 'RunningModeAutoStopTimeoutInMinutes': 123, 'RootVolumeSizeGib': 123, 'UserVolumeSizeGib': 123, 'ComputeTypeName': 'VALUE'|'STANDARD'|'PERFORMANCE'|'POWER'|'GRAPHICS' }, 'ModificationStates': [ { 'Resource': 'ROOT_VOLUME'|'USER_VOLUME'|'COMPUTE_TYPE', 'State': 'UPDATE_INITIATED'|'UPDATE_IN_PROGRESS' }, ] }, ] }
Response Structure
(dict) --
FailedRequests (list) --
Information about the WorkSpaces that could not be created.
(dict) --
Information about a WorkSpace that could not be created.
WorkspaceRequest (dict) --
Information about the WorkSpace.
DirectoryId (string) --
The identifier of the AWS Directory Service directory for the WorkSpace. You can use DescribeWorkspaceDirectories to list the available directories.
UserName (string) --
The username of the user for the WorkSpace. This username must exist in the AWS Directory Service directory for the WorkSpace.
BundleId (string) --
The identifier of the bundle for the WorkSpace. You can use DescribeWorkspaceBundles to list the available bundles.
VolumeEncryptionKey (string) --
The KMS key used to encrypt data stored on your WorkSpace.
UserVolumeEncryptionEnabled (boolean) --
Indicates whether the data stored on the user volume is encrypted.
RootVolumeEncryptionEnabled (boolean) --
Indicates whether the data stored on the root volume is encrypted.
WorkspaceProperties (dict) --
The WorkSpace properties.
RunningMode (string) --
The running mode. For more information, see Manage the WorkSpace Running Mode.
RunningModeAutoStopTimeoutInMinutes (integer) --
The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60 minute intervals.
RootVolumeSizeGib (integer) --
The size of the root volume.
UserVolumeSizeGib (integer) --
The size of the user storage.
ComputeTypeName (string) --
The compute type. For more information, see Amazon WorkSpaces Bundles.
Tags (list) --
The tags for the WorkSpace.
(dict) --
Information about a tag.
Key (string) --
The key of the tag.
Value (string) --
The value of the tag.
ErrorCode (string) --
The error code.
ErrorMessage (string) --
The textual error message.
PendingRequests (list) --
Information about the WorkSpaces that were created.
Because this operation is asynchronous, the identifier returned is not immediately available for use with other operations. For example, if you call DescribeWorkspaces before the WorkSpace is created, the information returned can be incomplete.
(dict) --
Information about a WorkSpace.
WorkspaceId (string) --
The identifier of the WorkSpace.
DirectoryId (string) --
The identifier of the AWS Directory Service directory for the WorkSpace.
UserName (string) --
The user for the WorkSpace.
IpAddress (string) --
The IP address of the WorkSpace.
State (string) --
The operational state of the WorkSpace.
BundleId (string) --
The identifier of the bundle used to create the WorkSpace.
SubnetId (string) --
The identifier of the subnet for the WorkSpace.
ErrorMessage (string) --
If the WorkSpace could not be created, contains a textual error message that describes the failure.
ErrorCode (string) --
If the WorkSpace could not be created, contains the error code.
ComputerName (string) --
The name of the WorkSpace, as seen by the operating system.
VolumeEncryptionKey (string) --
The KMS key used to encrypt data stored on your WorkSpace.
UserVolumeEncryptionEnabled (boolean) --
Indicates whether the data stored on the user volume is encrypted.
RootVolumeEncryptionEnabled (boolean) --
Indicates whether the data stored on the root volume is encrypted.
WorkspaceProperties (dict) --
The properties of the WorkSpace.
RunningMode (string) --
The running mode. For more information, see Manage the WorkSpace Running Mode.
RunningModeAutoStopTimeoutInMinutes (integer) --
The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60 minute intervals.
RootVolumeSizeGib (integer) --
The size of the root volume.
UserVolumeSizeGib (integer) --
The size of the user storage.
ComputeTypeName (string) --
The compute type. For more information, see Amazon WorkSpaces Bundles.
ModificationStates (list) --
The modification states of the WorkSpace.
(dict) --
Information about a WorkSpace modification.
Resource (string) --
The resource.
State (string) --
The modification state.
{'Directories': {'ipGroupIds': ['string']}}
Describes the available AWS Directory Service directories that are registered with Amazon WorkSpaces.
See also: AWS API Documentation
Request Syntax
client.describe_workspace_directories( DirectoryIds=[ 'string', ], NextToken='string' )
list
The identifiers of the directories. If the value is null, all directories are retrieved.
(string) --
string
The token for the next set of results. (You received this token from a previous call.)
dict
Response Syntax
{ 'Directories': [ { 'DirectoryId': 'string', 'Alias': 'string', 'DirectoryName': 'string', 'RegistrationCode': 'string', 'SubnetIds': [ 'string', ], 'DnsIpAddresses': [ 'string', ], 'CustomerUserName': 'string', 'IamRoleId': 'string', 'DirectoryType': 'SIMPLE_AD'|'AD_CONNECTOR', 'WorkspaceSecurityGroupId': 'string', 'State': 'REGISTERING'|'REGISTERED'|'DEREGISTERING'|'DEREGISTERED'|'ERROR', 'WorkspaceCreationProperties': { 'EnableWorkDocs': True|False, 'EnableInternetAccess': True|False, 'DefaultOu': 'string', 'CustomSecurityGroupId': 'string', 'UserEnabledAsLocalAdministrator': True|False }, 'ipGroupIds': [ 'string', ] }, ], 'NextToken': 'string' }
Response Structure
(dict) --
Directories (list) --
Information about the directories.
(dict) --
Information about an AWS Directory Service directory for use with Amazon WorkSpaces.
DirectoryId (string) --
The directory identifier.
Alias (string) --
The directory alias.
DirectoryName (string) --
The name of the directory.
RegistrationCode (string) --
The registration code for the directory. This is the code that users enter in their Amazon WorkSpaces client application to connect to the directory.
SubnetIds (list) --
The identifiers of the subnets used with the directory.
(string) --
DnsIpAddresses (list) --
The IP addresses of the DNS servers for the directory.
(string) --
CustomerUserName (string) --
The user name for the service account.
IamRoleId (string) --
The identifier of the IAM role. This is the role that allows Amazon WorkSpaces to make calls to other services, such as Amazon EC2, on your behalf.
DirectoryType (string) --
The directory type.
WorkspaceSecurityGroupId (string) --
The identifier of the security group that is assigned to new WorkSpaces.
State (string) --
The state of the directory's registration with Amazon WorkSpaces
WorkspaceCreationProperties (dict) --
The default creation properties for all WorkSpaces in the directory.
EnableWorkDocs (boolean) --
Indicates whether the directory is enabled for Amazon WorkDocs.
EnableInternetAccess (boolean) --
The public IP address to attach to all WorkSpaces that are created or rebuilt.
DefaultOu (string) --
The organizational unit (OU) in the directory for the WorkSpace machine accounts.
CustomSecurityGroupId (string) --
The identifier of any security groups to apply to WorkSpaces when they are created.
UserEnabledAsLocalAdministrator (boolean) --
Indicates whether the WorkSpace user is an administrator on the WorkSpace.
ipGroupIds (list) --
The identifiers of the IP access control groups associated with the directory.
(string) --
NextToken (string) --
The token to use to retrieve the next set of results, or null if there are no more results available. This token is valid for one day and must be used within that time frame.
{'Workspaces': {'State': {'ADMIN_MAINTENANCE'}}}
Describes the specified WorkSpaces.
You can filter the results using bundle ID, directory ID, or owner, but you can specify only one filter at a time.
See also: AWS API Documentation
Request Syntax
client.describe_workspaces( WorkspaceIds=[ 'string', ], DirectoryId='string', UserName='string', BundleId='string', Limit=123, NextToken='string' )
list
The IDs of the WorkSpaces. This parameter cannot be combined with any other filter.
Because the CreateWorkspaces operation is asynchronous, the identifier it returns is not immediately available. If you immediately call DescribeWorkspaces with this identifier, no information is returned.
(string) --
string
The ID of the directory. In addition, you can optionally specify a specific directory user (see UserName). This parameter cannot be combined with any other filter.
string
The name of the directory user. You must specify this parameter with DirectoryId.
string
The ID of the bundle. All WorkSpaces that are created from this bundle are retrieved. This parameter cannot be combined with any other filter.
integer
The maximum number of items to return.
string
The token for the next set of results. (You received this token from a previous call.)
dict
Response Syntax
{ 'Workspaces': [ { 'WorkspaceId': 'string', 'DirectoryId': 'string', 'UserName': 'string', 'IpAddress': 'string', 'State': 'PENDING'|'AVAILABLE'|'IMPAIRED'|'UNHEALTHY'|'REBOOTING'|'STARTING'|'REBUILDING'|'MAINTENANCE'|'ADMIN_MAINTENANCE'|'TERMINATING'|'TERMINATED'|'SUSPENDED'|'UPDATING'|'STOPPING'|'STOPPED'|'ERROR', 'BundleId': 'string', 'SubnetId': 'string', 'ErrorMessage': 'string', 'ErrorCode': 'string', 'ComputerName': 'string', 'VolumeEncryptionKey': 'string', 'UserVolumeEncryptionEnabled': True|False, 'RootVolumeEncryptionEnabled': True|False, 'WorkspaceProperties': { 'RunningMode': 'AUTO_STOP'|'ALWAYS_ON', 'RunningModeAutoStopTimeoutInMinutes': 123, 'RootVolumeSizeGib': 123, 'UserVolumeSizeGib': 123, 'ComputeTypeName': 'VALUE'|'STANDARD'|'PERFORMANCE'|'POWER'|'GRAPHICS' }, 'ModificationStates': [ { 'Resource': 'ROOT_VOLUME'|'USER_VOLUME'|'COMPUTE_TYPE', 'State': 'UPDATE_INITIATED'|'UPDATE_IN_PROGRESS' }, ] }, ], 'NextToken': 'string' }
Response Structure
(dict) --
Workspaces (list) --
Information about the WorkSpaces.
Because CreateWorkspaces is an asynchronous operation, some of the returned information could be incomplete.
(dict) --
Information about a WorkSpace.
WorkspaceId (string) --
The identifier of the WorkSpace.
DirectoryId (string) --
The identifier of the AWS Directory Service directory for the WorkSpace.
UserName (string) --
The user for the WorkSpace.
IpAddress (string) --
The IP address of the WorkSpace.
State (string) --
The operational state of the WorkSpace.
BundleId (string) --
The identifier of the bundle used to create the WorkSpace.
SubnetId (string) --
The identifier of the subnet for the WorkSpace.
ErrorMessage (string) --
If the WorkSpace could not be created, contains a textual error message that describes the failure.
ErrorCode (string) --
If the WorkSpace could not be created, contains the error code.
ComputerName (string) --
The name of the WorkSpace, as seen by the operating system.
VolumeEncryptionKey (string) --
The KMS key used to encrypt data stored on your WorkSpace.
UserVolumeEncryptionEnabled (boolean) --
Indicates whether the data stored on the user volume is encrypted.
RootVolumeEncryptionEnabled (boolean) --
Indicates whether the data stored on the root volume is encrypted.
WorkspaceProperties (dict) --
The properties of the WorkSpace.
RunningMode (string) --
The running mode. For more information, see Manage the WorkSpace Running Mode.
RunningModeAutoStopTimeoutInMinutes (integer) --
The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60 minute intervals.
RootVolumeSizeGib (integer) --
The size of the root volume.
UserVolumeSizeGib (integer) --
The size of the user storage.
ComputeTypeName (string) --
The compute type. For more information, see Amazon WorkSpaces Bundles.
ModificationStates (list) --
The modification states of the WorkSpace.
(dict) --
Information about a WorkSpace modification.
Resource (string) --
The resource.
State (string) --
The modification state.
NextToken (string) --
The token to use to retrieve the next set of results, or null if there are no more results available. This token is valid for one day and must be used within that time frame.