Module Smaws_Client_WorkSpaces.Types

type nonrec exception_message = string
type nonrec non_empty_string = string
type nonrec resource_not_found_exception = {
  1. resource_id : non_empty_string option;
    (*

    The ID of the resource that could not be found.

    *)
  2. message : exception_message option;
    (*

    The resource could not be found.

    *)
}

The resource could not be found.

type nonrec resource_limit_exceeded_exception = {
  1. message : exception_message option;
    (*

    The exception error message.

    *)
}

Your resource limits have been exceeded.

type nonrec exception_error_code = string
type nonrec operation_not_supported_exception = {
  1. reason : exception_error_code option;
    (*

    The exception error reason.

    *)
  2. message : exception_message option;
    (*

    The exception error message.

    *)
}

This operation is not supported.

type nonrec operation_in_progress_exception = {
  1. message : exception_message option;
}

The properties of this WorkSpace are currently being modified. Try again in a moment.

type nonrec invalid_resource_state_exception = {
  1. message : exception_message option;
}

The state of the resource is not valid for this operation.

type nonrec invalid_parameter_values_exception = {
  1. message : exception_message option;
    (*

    The exception error message.

    *)
}

One or more parameter values are not valid.

type nonrec access_denied_exception = {
  1. message : exception_message option;
}

The user is not authorized to access a resource.

type nonrec workspaces_pool_id = string
type nonrec ar_n = string
type nonrec available_user_sessions = int
type nonrec desired_user_sessions = int
type nonrec actual_user_sessions = int
type nonrec active_user_sessions = int
type nonrec capacity_status = {
  1. active_user_sessions : active_user_sessions;
    (*

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

    *)
  2. actual_user_sessions : actual_user_sessions;
    (*

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

    ActualUserSessions = AvailableUserSessions + ActiveUserSessions

    *)
  3. desired_user_sessions : desired_user_sessions;
    (*

    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.

    *)
  4. available_user_sessions : available_user_sessions;
    (*

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

    AvailableUserSessions = ActualUserSessions - ActiveUserSessions

    *)
}

Describes the capacity status for a pool of WorkSpaces.

type nonrec workspaces_pool_name = string
type nonrec update_description = string
type nonrec workspaces_pool_state =
  1. | UPDATING
  2. | STOPPING
  3. | STOPPED
  4. | STARTING
  5. | RUNNING
  6. | DELETING
  7. | CREATING
type nonrec timestamp = Smaws_Lib.CoreTypes.Timestamp.t
type nonrec bundle_id = string
type nonrec directory_id = string
type nonrec workspaces_pool_error_code =
  1. | DEFAULT_OU_IS_MISSING
  2. | INSUFFICIENT_PERMISSIONS_ERROR
  3. | DIRECTORY_NOT_FOUND
  4. | BUNDLE_NOT_FOUND
  5. | DOMAIN_JOIN_ERROR_SECRET_INVALID
  6. | DOMAIN_JOIN_ERROR_SECRET_VALUE_KEY_NOT_FOUND
  7. | DOMAIN_JOIN_ERROR_SECRET_NOT_FOUND
  8. | DOMAIN_JOIN_ERROR_SECRET_STATE_INVALID
  9. | DOMAIN_JOIN_ERROR_SECRET_DECRYPTION_FAILURE
  10. | DOMAIN_JOIN_ERROR_SECRET_ACTION_PERMISSION_IS_MISSING
  11. | DOMAIN_JOIN_INTERNAL_SERVICE_ERROR
  12. | DOMAIN_JOIN_NERR_PASSWORD_EXPIRED
  13. | DOMAIN_JOIN_ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED
  14. | DOMAIN_JOIN_NERR_WORKSTATION_NOT_STARTED
  15. | DOMAIN_JOIN_NERR_INVALID_WORKGROUP_NAME
  16. | DOMAIN_JOIN_ERROR_NOT_SUPPORTED
  17. | DOMAIN_JOIN_ERROR_NO_SUCH_DOMAIN
  18. | DOMAIN_JOIN_ERROR_MORE_DATA
  19. | DOMAIN_JOIN_ERROR_INVALID_PARAMETER
  20. | DOMAIN_JOIN_ERROR_LOGON_FAILURE
  21. | DOMAIN_JOIN_ERROR_ACCESS_DENIED
  22. | DOMAIN_JOIN_ERROR_FILE_NOT_FOUND
  23. | WORKSPACES_POOL_INSTANCE_PROVISIONING_FAILURE
  24. | WORKSPACES_POOL_STOPPED
  25. | IAM_SERVICE_ROLE_MISSING_DESCRIBE_SECURITY_GROUPS_ACTION
  26. | IGW_NOT_ATTACHED
  27. | SECURITY_GROUPS_NOT_FOUND
  28. | INVALID_SUBNET_CONFIGURATION
  29. | IMAGE_NOT_FOUND
  30. | SUBNET_NOT_FOUND
  31. | IAM_SERVICE_ROLE_MISSING_DESCRIBE_SUBNET_ACTION
  32. | SUBNET_HAS_INSUFFICIENT_IP_ADDRESSES
  33. | STS_DISABLED_IN_REGION
  34. | MACHINE_ROLE_IS_MISSING
  35. | INTERNAL_SERVICE_ERROR
  36. | NETWORK_INTERFACE_LIMIT_EXCEEDED
  37. | IAM_SERVICE_ROLE_MISSING_ENI_DELETE_ACTION
  38. | IAM_SERVICE_ROLE_MISSING_ENI_CREATE_ACTION
  39. | IAM_SERVICE_ROLE_MISSING_ENI_DESCRIBE_ACTION
  40. | IAM_SERVICE_ROLE_IS_MISSING
type nonrec error_message = string
type nonrec workspaces_pool_error = {
  1. error_message : error_message option;
    (*

    The error message.

    *)
  2. error_code : workspaces_pool_error_code option;
    (*

    The error code.

    *)
}

Describes a pool error.

type nonrec workspaces_pool_errors = workspaces_pool_error list
type nonrec application_settings_status_enum =
  1. | ENABLED
  2. | DISABLED
type nonrec settings_group = string
type nonrec s3_bucket_name = string
type nonrec application_settings_response = {
  1. s3_bucket_name : s3_bucket_name option;
    (*

    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.

    *)
  2. settings_group : settings_group option;
    (*

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

    *)
  3. status : application_settings_status_enum;
    (*

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

    *)
}

Describes the persistent application settings for WorkSpaces Pools users.

type nonrec disconnect_timeout_in_seconds = int
type nonrec idle_disconnect_timeout_in_seconds = int
type nonrec max_user_duration_in_seconds = int
type nonrec timeout_settings = {
  1. max_user_duration_in_seconds : max_user_duration_in_seconds option;
    (*

    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.

    *)
  2. idle_disconnect_timeout_in_seconds : idle_disconnect_timeout_in_seconds option;
    (*

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

    *)
  3. disconnect_timeout_in_seconds : disconnect_timeout_in_seconds option;
    (*

    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.

    *)
}

Describes the timeout settings for a pool of WorkSpaces.

type nonrec pools_running_mode =
  1. | ALWAYS_ON
  2. | AUTO_STOP
type nonrec workspaces_pool = {
  1. running_mode : pools_running_mode;
    (*

    The running mode of the pool.

    *)
  2. timeout_settings : timeout_settings option;
    (*

    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.

    *)
  3. application_settings : application_settings_response option;
    (*

    The persistent application settings for users of the pool.

    *)
  4. errors : workspaces_pool_errors option;
    (*

    The pool errors.

    *)
  5. directory_id : directory_id;
    (*

    The identifier of the directory used by the pool.

    *)
  6. bundle_id : bundle_id;
    (*

    The identifier of the bundle used by the pool.

    *)
  7. created_at : timestamp;
    (*

    The time the pool was created.

    *)
  8. state : workspaces_pool_state;
    (*

    The current state of the pool.

    *)
  9. description : update_description option;
    (*

    The description of the pool.

    *)
  10. pool_name : workspaces_pool_name;
    (*

    The name of the pool.

    *)
  11. capacity_status : capacity_status;
    (*

    The capacity status for the pool

    *)
  12. pool_arn : ar_n;
    (*

    The Amazon Resource Name (ARN) for the pool.

    *)
  13. pool_id : workspaces_pool_id;
    (*

    The identifier of a pool.

    *)
}

Describes a pool of WorkSpaces.

type nonrec update_workspaces_pool_result = {
  1. workspaces_pool : workspaces_pool option;
    (*

    Describes the specified pool.

    *)
}
type nonrec capacity = {
  1. desired_user_sessions : desired_user_sessions;
    (*

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

    *)
}

Describes the user capacity for a pool of WorkSpaces.

type nonrec application_settings_request = {
  1. settings_group : settings_group option;
    (*

    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.

    *)
  2. status : application_settings_status_enum;
    (*

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

    *)
}

The persistent application settings for WorkSpaces Pools users.

type nonrec update_workspaces_pool_request = {
  1. running_mode : pools_running_mode option;
    (*

    The desired running mode for the pool. The running mode can only be updated when the pool is in a stopped state.

    *)
  2. timeout_settings : timeout_settings option;
    (*

    Indicates the timeout settings of the specified pool.

    *)
  3. application_settings : application_settings_request option;
    (*

    The persistent application settings for users in the pool.

    *)
  4. capacity : capacity option;
    (*

    The desired capacity for the pool.

    *)
  5. directory_id : directory_id option;
    (*

    The identifier of the directory.

    *)
  6. bundle_id : bundle_id option;
    (*

    The identifier of the bundle.

    *)
  7. description : update_description option;
    (*

    Describes the specified pool to update.

    *)
  8. pool_id : workspaces_pool_id;
    (*

    The identifier of the specified pool to update.

    *)
}
type nonrec resource_unavailable_exception = {
  1. resource_id : non_empty_string option;
    (*

    The identifier of the resource that is not available.

    *)
  2. message : exception_message option;
    (*

    The exception error message.

    *)
}

The specified resource is not available.

type nonrec update_workspace_image_permission_result = unit
type nonrec workspace_image_id = string
type nonrec boolean_object = bool
type nonrec aws_account = string
type nonrec update_workspace_image_permission_request = {
  1. shared_account_id : aws_account;
    (*

    The identifier of the Amazon Web Services account to share or unshare the image with.

    Before sharing the image, confirm that you are sharing to the correct Amazon Web Services account ID.

    *)
  2. allow_copy_image : boolean_object;
    (*

    The permission to copy the image. This permission can be revoked only after an image has been shared.

    *)
  3. image_id : workspace_image_id;
    (*

    The identifier of the image.

    *)
}
type nonrec update_workspace_bundle_result = unit
type nonrec update_workspace_bundle_request = {
  1. image_id : workspace_image_id option;
    (*

    The identifier of the image.

    *)
  2. bundle_id : bundle_id option;
    (*

    The identifier of the bundle.

    *)
}
type nonrec update_rules_of_ip_group_result = unit
type nonrec ip_group_id = string
type nonrec ip_rule = string
type nonrec ip_rule_desc = string
type nonrec ip_rule_item = {
  1. rule_desc : ip_rule_desc option;
    (*

    The description.

    *)
  2. ip_rule : ip_rule option;
    (*

    The IP address range, in CIDR notation.

    *)
}

Describes a rule for an IP access control group.

type nonrec ip_rule_list = ip_rule_item list
type nonrec update_rules_of_ip_group_request = {
  1. user_rules : ip_rule_list;
    (*

    One or more rules.

    *)
  2. group_id : ip_group_id;
    (*

    The identifier of the group.

    *)
}
type nonrec resource_associated_exception = {
  1. message : exception_message option;
}

The resource is associated with a directory.

type nonrec update_connection_alias_permission_result = unit
type nonrec connection_alias_id = string
type nonrec connection_alias_permission = {
  1. allow_association : boolean_object;
    (*

    Indicates whether the specified Amazon Web Services account is allowed to associate the connection alias with a directory.

    *)
  2. shared_account_id : aws_account;
    (*

    The identifier of the Amazon Web Services account that the connection alias is shared with.

    *)
}

Describes the permissions for a connection alias. Connection aliases are used for cross-Region redirection. For more information, see Cross-Region Redirection for Amazon WorkSpaces.

type nonrec update_connection_alias_permission_request = {
  1. connection_alias_permission : connection_alias_permission;
    (*

    Indicates whether to share or unshare the connection alias with the specified Amazon Web Services account.

    *)
  2. alias_id : connection_alias_id;
    (*

    The identifier of the connection alias that you want to update permissions for.

    *)
}
type nonrec update_connect_client_add_in_result = unit
type nonrec amazon_uuid = string
type nonrec add_in_name = string
type nonrec add_in_url = string
type nonrec update_connect_client_add_in_request = {
  1. ur_l : add_in_url option;
    (*

    The endpoint URL of the Connect Customer client add-in.

    *)
  2. name : add_in_name option;
    (*

    The name of the client add-in.

    *)
  3. resource_id : directory_id;
    (*

    The directory identifier for which the client add-in is configured.

    *)
  4. add_in_id : amazon_uuid;
    (*

    The identifier of the client add-in to update.

    *)
}
type nonrec terminate_workspaces_pool_session_result = unit
type nonrec terminate_workspaces_pool_session_request = {
  1. session_id : amazon_uuid;
    (*

    The identifier of the pool session.

    *)
}
type nonrec terminate_workspaces_pool_result = unit
type nonrec terminate_workspaces_pool_request = {
  1. pool_id : workspaces_pool_id;
    (*

    The identifier of the pool.

    *)
}
type nonrec workspace_id = string
type nonrec error_type = string
type nonrec description = string
type nonrec failed_workspace_change_request = {
  1. error_message : description option;
    (*

    The text of the error message that is returned if the WorkSpace cannot be rebooted.

    *)
  2. error_code : error_type option;
    (*

    The error code that is returned if the WorkSpace cannot be rebooted.

    *)
  3. workspace_id : workspace_id option;
    (*

    The identifier of the WorkSpace.

    *)
}

Describes a WorkSpace that could not be rebooted. (RebootWorkspaces), rebuilt (RebuildWorkspaces), restored (RestoreWorkspace), terminated (TerminateWorkspaces), started (StartWorkspaces), or stopped (StopWorkspaces).

type nonrec failed_terminate_workspace_requests = failed_workspace_change_request list
type nonrec terminate_workspaces_result = {
  1. failed_requests : failed_terminate_workspace_requests option;
    (*

    Information about the WorkSpaces that could not be terminated.

    *)
}
type nonrec terminate_request = {
  1. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}

Describes the information used to terminate a WorkSpace.

type nonrec terminate_workspace_requests = terminate_request list
type nonrec terminate_workspaces_request = {
  1. terminate_workspace_requests : terminate_workspace_requests;
    (*

    The WorkSpaces to terminate. You can specify up to 25 WorkSpaces.

    *)
}
type nonrec stop_workspaces_pool_result = unit
type nonrec stop_workspaces_pool_request = {
  1. pool_id : workspaces_pool_id;
    (*

    The identifier of the pool.

    *)
}
type nonrec failed_stop_workspace_requests = failed_workspace_change_request list
type nonrec stop_workspaces_result = {
  1. failed_requests : failed_stop_workspace_requests option;
    (*

    Information about the WorkSpaces that could not be stopped.

    *)
}
type nonrec stop_request = {
  1. workspace_id : workspace_id option;
    (*

    The identifier of the WorkSpace.

    *)
}

Describes the information used to stop a WorkSpace.

type nonrec stop_workspace_requests = stop_request list
type nonrec stop_workspaces_request = {
  1. stop_workspace_requests : stop_workspace_requests;
    (*

    The WorkSpaces to stop. You can specify up to 25 WorkSpaces.

    *)
}
type nonrec start_workspaces_pool_result = unit
type nonrec start_workspaces_pool_request = {
  1. pool_id : workspaces_pool_id;
    (*

    The identifier of the pool.

    *)
}
type nonrec failed_start_workspace_requests = failed_workspace_change_request list
type nonrec start_workspaces_result = {
  1. failed_requests : failed_start_workspace_requests option;
    (*

    Information about the WorkSpaces that could not be started.

    *)
}
type nonrec start_request = {
  1. workspace_id : workspace_id option;
    (*

    The identifier of the WorkSpace.

    *)
}

Information used to start a WorkSpace.

type nonrec start_workspace_requests = start_request list
type nonrec start_workspaces_request = {
  1. start_workspace_requests : start_workspace_requests;
    (*

    The WorkSpaces to start. You can specify up to 25 WorkSpaces.

    *)
}
type nonrec revoke_ip_rules_result = unit
type nonrec ip_revoked_rule_list = ip_rule list
type nonrec revoke_ip_rules_request = {
  1. user_rules : ip_revoked_rule_list;
    (*

    The rules to remove from the group.

    *)
  2. group_id : ip_group_id;
    (*

    The identifier of the group.

    *)
}
type nonrec restore_workspace_result = unit
type nonrec restore_workspace_request = {
  1. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}
type nonrec validation_exception = {
  1. message : exception_message option;
}

You either haven't provided a TargetAccountId or are using the same value for TargetAccountId and SourceAccountId.

type nonrec internal_server_exception = {
  1. message : exception_message option;
}

Unexpected server error occured.

type nonrec conflict_exception = {
  1. message : exception_message option;
}

The TargetAccountId is already linked or invited.

Information about about the account link.

type nonrec client_token = string
type nonrec workspaces_default_role_not_found_exception = {
  1. message : exception_message option;
}

The workspaces_DefaultRole role could not be found. If this is the first time you are registering a directory, you will need to create the workspaces_DefaultRole role before you can register a directory. For more information, see Creating the workspaces_DefaultRole Role.

type nonrec unsupported_network_configuration_exception = {
  1. message : exception_message option;
}

The configuration of this network is not supported for this operation, or your network configuration conflicts with the Amazon WorkSpaces management network IP range. For more information, see Configure a VPC for Amazon WorkSpaces.

type nonrec resource_already_exists_exception = {
  1. message : exception_message option;
}

The specified resource already exists.

type nonrec workspace_directory_state =
  1. | ERROR
  2. | DEREGISTERED
  3. | DEREGISTERING
  4. | REGISTERED
  5. | REGISTERING
type nonrec register_workspace_directory_result = {
  1. state : workspace_directory_state option;
    (*

    The registration status of the WorkSpace directory.

    *)
  2. directory_id : directory_id option;
    (*

    The identifier of the directory.

    *)
}
type nonrec subnet_id = string
type nonrec subnet_ids = subnet_id list
type nonrec tenancy =
  1. | SHARED
  2. | DEDICATED
type nonrec tag_key = string
type nonrec tag_value = string
type nonrec tag = {
  1. value : tag_value option;
    (*

    The value of the tag.

    *)
  2. key : tag_key;
    (*

    The key of the tag.

    *)
}

Describes a tag.

type nonrec tag_list = tag list
type nonrec workspace_directory_name = string
type nonrec workspace_directory_description = string
type nonrec user_identity_type =
  1. | AWS_IAM_IDENTITY_CENTER
  2. | AWS_DIRECTORY_SERVICE
  3. | CUSTOMER_MANAGED
type nonrec microsoft_entra_config_tenant_id = string
type nonrec secrets_manager_arn = string
type nonrec microsoft_entra_config = {
  1. application_config_secret_arn : secrets_manager_arn option;
    (*

    The Amazon Resource Name (ARN) of the application config.

    *)
  2. tenant_id : microsoft_entra_config_tenant_id option;
    (*

    The identifier of the tenant.

    *)
}

Specifies the configurations of the Microsoft Entra.

type nonrec workspace_type =
  1. | POOLS
  2. | PERSONAL
type nonrec domain_name = string
type nonrec active_directory_config = {
  1. service_account_secret_arn : secrets_manager_arn;
    (*

    Indicates the secret ARN on the service account.

    *)
  2. domain_name : domain_name;
    (*

    The name of the domain.

    *)
}

Information about the Active Directory config.

type nonrec register_workspace_directory_request = {
  1. active_directory_config : active_directory_config option;
    (*

    The active directory config of the directory.

    *)
  2. workspace_type : workspace_type option;
    (*

    Indicates whether the directory's WorkSpace type is personal or pools.

    *)
  3. microsoft_entra_config : microsoft_entra_config option;
    (*

    The details about Microsoft Entra config.

    *)
  4. idc_instance_arn : ar_n option;
    (*

    The Amazon Resource Name (ARN) of the identity center instance.

    *)
  5. user_identity_type : user_identity_type option;
    (*

    The type of identity management the user is using.

    *)
  6. workspace_directory_description : workspace_directory_description option;
    (*

    Description of the directory to register.

    *)
  7. workspace_directory_name : workspace_directory_name option;
    (*

    The name of the directory to register.

    *)
  8. tags : tag_list option;
    (*

    The tags associated with the directory.

    *)
  9. tenancy : tenancy option;
    (*

    Indicates whether your WorkSpace directory is dedicated or shared. To use Bring Your Own License (BYOL) images, this value must be set to DEDICATED and your Amazon Web Services account must be enabled for BYOL. If your account has not been enabled for BYOL, you will receive an InvalidParameterValuesException error. For more information about BYOL images, see Bring Your Own Windows Desktop Images.

    *)
  10. enable_self_service : boolean_object option;
    (*

    Indicates whether self-service capabilities are enabled or disabled.

    *)
  11. subnet_ids : subnet_ids option;
    (*

    The identifiers of the subnets for your virtual private cloud (VPC). Make sure that the subnets are in supported Availability Zones. The subnets must also be in separate Availability Zones. If these conditions are not met, you will receive an OperationNotSupportedException error.

    *)
  12. directory_id : directory_id option;
    (*

    The identifier of the directory. You cannot register a directory if it does not have a status of Active. If the directory does not have a status of Active, you will receive an InvalidResourceStateException error. If you have already registered the maximum number of directories that you can register with Amazon WorkSpaces, you will receive a ResourceLimitExceededException error. Deregister directories that you are not using for WorkSpaces, and try again.

    *)
}
type nonrec failed_rebuild_workspace_requests = failed_workspace_change_request list
type nonrec rebuild_workspaces_result = {
  1. failed_requests : failed_rebuild_workspace_requests option;
    (*

    Information about the WorkSpace that could not be rebuilt.

    *)
}
type nonrec rebuild_request = {
  1. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}

Describes the information used to rebuild a WorkSpace.

type nonrec rebuild_workspace_requests = rebuild_request list
type nonrec rebuild_workspaces_request = {
  1. rebuild_workspace_requests : rebuild_workspace_requests;
    (*

    The WorkSpace to rebuild. You can specify a single WorkSpace.

    *)
}
type nonrec failed_reboot_workspace_requests = failed_workspace_change_request list
type nonrec reboot_workspaces_result = {
  1. failed_requests : failed_reboot_workspace_requests option;
    (*

    Information about the WorkSpaces that could not be rebooted.

    *)
}
type nonrec reboot_request = {
  1. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}

Describes the information used to reboot a WorkSpace.

type nonrec reboot_workspace_requests = reboot_request list
type nonrec reboot_workspaces_request = {
  1. reboot_workspace_requests : reboot_workspace_requests;
    (*

    The WorkSpaces to reboot. You can specify up to 25 WorkSpaces.

    *)
}
type nonrec modify_workspace_state_result = unit
type nonrec target_workspace_state =
  1. | ADMIN_MAINTENANCE
  2. | AVAILABLE
type nonrec modify_workspace_state_request = {
  1. workspace_state : target_workspace_state;
    (*

    The WorkSpace state.

    *)
  2. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}
type nonrec unsupported_workspace_configuration_exception = {
  1. message : exception_message option;
}

The configuration of this WorkSpace is not supported for this operation. For more information, see Required Configuration and Service Components for WorkSpaces.

type nonrec modify_workspace_properties_result = unit
type nonrec running_mode =
  1. | MANUAL
  2. | ALWAYS_ON
  3. | AUTO_STOP
type nonrec running_mode_auto_stop_timeout_in_minutes = int
type nonrec root_volume_size_gib = int
type nonrec user_volume_size_gib = int
type nonrec compute =
  1. | GRAPHICS_GR6F_4XLARGE
  2. | GRAPHICS_G6F_4XLARGE
  3. | GRAPHICS_G6F_2XLARGE
  4. | GRAPHICS_G6F_XLARGE
  5. | GRAPHICS_G6F_LARGE
  6. | GRAPHICS_GR6_8XLARGE
  7. | GRAPHICS_GR6_4XLARGE
  8. | GRAPHICS_G6_16XLARGE
  9. | GRAPHICS_G6_8XLARGE
  10. | GRAPHICS_G6_4XLARGE
  11. | GRAPHICS_G6_2XLARGE
  12. | GRAPHICS_G6_XLARGE
  13. | GRAPHICSPRO_G4DN
  14. | GRAPHICS_G4DN
  15. | GRAPHICSPRO
  16. | GENERALPURPOSE_8XLARGE
  17. | GENERALPURPOSE_4XLARGE
  18. | POWERPRO
  19. | GRAPHICS
  20. | POWER
  21. | PERFORMANCE
  22. | STANDARD
  23. | VALUE
type nonrec protocol =
  1. | WSP
  2. | PCOIP
type nonrec protocol_list = protocol list
type nonrec operating_system_name =
  1. | ROCKY_8
  2. | RHEL_8
  3. | WINDOWS_SERVER_2025
  4. | WINDOWS_SERVER_2022
  5. | WINDOWS_SERVER_2019
  6. | WINDOWS_SERVER_2016
  7. | WINDOWS_7
  8. | WINDOWS_11
  9. | WINDOWS_10
  10. | UNKNOWN
  11. | UBUNTU_22_04
  12. | UBUNTU_20_04
  13. | UBUNTU_18_04
  14. | AMAZON_LINUX_2
type nonrec aga_mode_for_work_space_enum =
  1. | INHERITED
  2. | DISABLED
  3. | ENABLED_AUTO
type nonrec aga_preferred_protocol_for_work_space =
  1. | INHERITED
  2. | NONE
  3. | TCP
type nonrec global_accelerator_for_work_space = {
  1. preferred_protocol : aga_preferred_protocol_for_work_space option;
    (*

    Indicates the preferred protocol for Global Accelerator.

    *)
  2. mode : aga_mode_for_work_space_enum;
    (*

    Indicates if Global Accelerator for WorkSpaces is enabled, disabled, or the same mode as the associated directory.

    *)
}

Describes the Global Accelerator for WorkSpaces.

type nonrec workspace_properties = {
  1. global_accelerator : global_accelerator_for_work_space option;
    (*

    Indicates the Global Accelerator properties.

    *)
  2. operating_system_name : operating_system_name option;
    (*

    The name of the operating system.

    *)
  3. protocols : protocol_list option;
    (*

    The protocol. For more information, see Protocols for Amazon WorkSpaces.

    • Only available for WorkSpaces created with PCoIP bundles.
    • The Protocols property is case sensitive. Ensure you use PCOIP or DCV (formerly WSP).
    • Unavailable for Windows 7 WorkSpaces and WorkSpaces using GPU-based bundles (Graphics, GraphicsPro, Graphics.g4dn, GraphicsPro.g4dn, and Graphics.g6).
    *)
  4. compute_type_name : compute option;
    (*

    The compute type. For more information, see Amazon WorkSpaces Bundles.

    *)
  5. user_volume_size_gib : user_volume_size_gib option;
    (*

    The size of the user storage. For important information about how to modify the size of the root and user volumes, see Modify a WorkSpace.

    *)
  6. root_volume_size_gib : root_volume_size_gib option;
    (*

    The size of the root volume. For important information about how to modify the size of the root and user volumes, see Modify a WorkSpace.

    *)
  7. running_mode_auto_stop_timeout_in_minutes : running_mode_auto_stop_timeout_in_minutes option;
    (*

    The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals.

    *)
  8. running_mode : running_mode option;
    (*

    The running mode. For more information, see Manage the WorkSpace Running Mode.

    The MANUAL value is only supported by Amazon WorkSpaces Core. Contact your account team to be allow-listed to use this value. For more information, see Amazon WorkSpaces Core.

    Review your running mode to ensure you are using one that is optimal for your needs and budget. For more information on switching running modes, see Can I switch between hourly and monthly billing?

    *)
}

Describes a WorkSpace.

type nonrec data_replication =
  1. | PRIMARY_AS_SOURCE
  2. | NO_REPLICATION
type nonrec modify_workspace_properties_request = {
  1. data_replication : data_replication option;
    (*

    Indicates the data replication status.

    *)
  2. workspace_properties : workspace_properties option;
    (*

    The properties of the WorkSpace.

    *)
  3. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}
type nonrec modify_workspace_creation_properties_result = unit
type nonrec default_ou = string
type nonrec security_group_id = string
type nonrec workspace_creation_properties = {
  1. instance_iam_role_arn : ar_n option;
    (*

    Indicates the IAM role ARN of the instance.

    *)
  2. enable_maintenance_mode : boolean_object option;
    (*

    Indicates whether maintenance mode is enabled for your WorkSpaces. For more information, see WorkSpace Maintenance.

    *)
  3. user_enabled_as_local_administrator : boolean_object option;
    (*

    Indicates whether users are local administrators of their WorkSpaces.

    *)
  4. custom_security_group_id : security_group_id option;
    (*

    The identifier of your custom security group.

    *)
  5. default_ou : default_ou option;
    (*

    The default organizational unit (OU) for your WorkSpaces directories. This string must be the full Lightweight Directory Access Protocol (LDAP) distinguished name for the target domain and OU. It must be in the form

    "OU={i value},DC={i value},DC={i value}"

    , where value is any string of characters, and the number of domain components (DCs) is two or more. For example, OU=WorkSpaces_machines,DC=machines,DC=example,DC=com.

    • To avoid errors, certain characters in the distinguished name must be escaped. For more information, see Distinguished Names in the Microsoft documentation.
    • The API doesn't validate whether the OU exists.
    *)
  6. enable_internet_access : boolean_object option;
    (*

    Indicates whether internet access is enabled for your WorkSpaces.

    *)
}

Describes the default properties that are used for creating WorkSpaces. For more information, see Update Directory Details for Your WorkSpaces.

type nonrec modify_workspace_creation_properties_request = {
  1. workspace_creation_properties : workspace_creation_properties;
    (*

    The default properties for creating WorkSpaces.

    *)
  2. resource_id : directory_id;
    (*

    The identifier of the directory.

    *)
}
type nonrec invalid_parameter_combination_exception = {
  1. message : exception_message option;
    (*

    The exception error message.

    *)
}

Two or more of the selected parameter values cannot be used together.

type nonrec modify_workspace_access_properties_result = unit
type nonrec access_property_value =
  1. | DENY
  2. | ALLOW
type nonrec access_endpoint_type =
  1. | STREAMING_WSP
type nonrec alphanumeric_dash_underscore_non_empty_string = string
type nonrec access_endpoint = {
  1. vpc_endpoint_id : alphanumeric_dash_underscore_non_empty_string option;
    (*

    Indicates the VPC endpoint to use for access.

    *)
  2. access_endpoint_type : access_endpoint_type option;
    (*

    Indicates the type of access endpoint.

    *)
}

Describes the access type and endpoint for a WorkSpace.

type nonrec access_endpoint_list = access_endpoint list
type nonrec internet_fallback_protocol =
  1. | PCOIP
type nonrec internet_fallback_protocol_list = internet_fallback_protocol list
type nonrec access_endpoint_config = {
  1. internet_fallback_protocols : internet_fallback_protocol_list option;
    (*

    Indicates a list of protocols that fallback to using the public Internet when streaming over a VPC endpoint is not available.

    *)
  2. access_endpoints : access_endpoint_list;
    (*

    Indicates a list of access endpoints associated with this directory.

    *)
}

Describes the access endpoint configuration for a WorkSpace.

type nonrec workspace_access_properties = {
  1. access_endpoint_config : access_endpoint_config option;
    (*

    Specifies the configuration for accessing the WorkSpace.

    *)
  2. device_type_work_spaces_thin_client : access_property_value option;
    (*

    Indicates whether users can access their WorkSpaces through a WorkSpaces Thin Client.

    *)
  3. device_type_linux : access_property_value option;
    (*

    Indicates whether users can use Linux clients to access their WorkSpaces.

    *)
  4. device_type_zero_client : access_property_value option;
    (*

    Indicates whether users can use zero client devices to access their WorkSpaces.

    *)
  5. device_type_chrome_os : access_property_value option;
    (*

    Indicates whether users can use Chromebooks to access their WorkSpaces.

    *)
  6. device_type_android : access_property_value option;
    (*

    Indicates whether users can use Android and Android-compatible Chrome OS devices to access their WorkSpaces.

    *)
  7. device_type_ios : access_property_value option;
    (*

    Indicates whether users can use iOS devices to access their WorkSpaces.

    *)
  8. device_type_web : access_property_value option;
    (*

    Indicates whether users can access their WorkSpaces through a web browser.

    *)
  9. device_type_osx : access_property_value option;
    (*

    Indicates whether users can use macOS clients to access their WorkSpaces.

    *)
  10. device_type_windows : access_property_value option;
    (*

    Indicates whether users can use Windows clients to access their WorkSpaces.

    *)
}

The device types and operating systems that can be used to access a WorkSpace. For more information, see Amazon WorkSpaces Client Network Requirements.

type nonrec modify_workspace_access_properties_request = {
  1. workspace_access_properties : workspace_access_properties;
    (*

    The device types and operating systems to enable or disable for access.

    *)
  2. resource_id : directory_id;
    (*

    The identifier of the directory.

    *)
}
type nonrec modify_streaming_properties_result = unit
type nonrec streaming_experience_preferred_protocol_enum =
  1. | UDP
  2. | TCP
type nonrec user_setting_action_enum =
  1. | SMART_CARD
  2. | PRINTING_TO_LOCAL_DEVICE
  3. | CLIPBOARD_COPY_TO_LOCAL_DEVICE
  4. | CLIPBOARD_COPY_FROM_LOCAL_DEVICE
type nonrec user_setting_permission_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec maximum_length = int
type nonrec user_setting = {
  1. maximum_length : maximum_length option;
    (*

    Indicates the maximum character length for the specified user setting.

    *)
  2. permission : user_setting_permission_enum;
    (*

    Indicates if the setting is enabled or disabled.

    *)
  3. action : user_setting_action_enum;
    (*

    Indicates the type of action.

    *)
}

Information about the user's permission settings.

type nonrec user_settings = user_setting list
type nonrec storage_connector_type_enum =
  1. | HOME_FOLDER
type nonrec storage_connector_status_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec storage_connector = {
  1. status : storage_connector_status_enum;
    (*

    Indicates if the storage connetor is enabled or disabled.

    *)
  2. connector_type : storage_connector_type_enum;
    (*

    The type of connector used to save user files.

    *)
}

Describes the storage connector.

type nonrec storage_connectors = storage_connector list
type nonrec aga_mode_for_directory_enum =
  1. | DISABLED
  2. | ENABLED_AUTO
type nonrec aga_preferred_protocol_for_directory =
  1. | NONE
  2. | TCP
type nonrec global_accelerator_for_directory = {
  1. preferred_protocol : aga_preferred_protocol_for_directory option;
    (*

    Indicates the preferred protocol for Global Accelerator.

    *)
  2. mode : aga_mode_for_directory_enum;
    (*

    Indicates if Global Accelerator for directory is enabled or disabled.

    *)
}

Describes the Global Accelerator for directory

type nonrec streaming_properties = {
  1. global_accelerator : global_accelerator_for_directory option;
    (*

    Indicates the Global Accelerator properties.

    *)
  2. storage_connectors : storage_connectors option;
    (*

    Indicates the storage connector used

    *)
  3. user_settings : user_settings option;
    (*

    Indicates the permission settings asscoiated with the user.

    *)
  4. streaming_experience_preferred_protocol : streaming_experience_preferred_protocol_enum option;
    (*

    Indicates the type of preferred protocol for the streaming experience.

    *)
}

Describes the streaming properties.

type nonrec modify_streaming_properties_request = {
  1. streaming_properties : streaming_properties option;
    (*

    The streaming properties to configure.

    *)
  2. resource_id : directory_id;
    (*

    The identifier of the resource.

    *)
}
type nonrec modify_selfservice_permissions_result = unit
type nonrec reconnect_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec selfservice_permissions = {
  1. rebuild_workspace : reconnect_enum option;
    (*

    Specifies whether users can rebuild the operating system of a WorkSpace to its original state.

    *)
  2. switch_running_mode : reconnect_enum option;
    (*

    Specifies whether users can switch the running mode of their WorkSpace.

    *)
  3. change_compute_type : reconnect_enum option;
    (*

    Specifies whether users can change the compute type (bundle) for their WorkSpace.

    *)
  4. increase_volume_size : reconnect_enum option;
    (*

    Specifies whether users can increase the volume size of the drives on their WorkSpace.

    *)
  5. restart_workspace : reconnect_enum option;
    (*

    Specifies whether users can restart their WorkSpace.

    *)
}

Describes the self-service permissions for a directory. For more information, see Enable Self-Service WorkSpace Management Capabilities for Your Users.

type nonrec modify_selfservice_permissions_request = {
  1. selfservice_permissions : selfservice_permissions;
    (*

    The permissions to enable or disable self-service capabilities.

    *)
  2. resource_id : directory_id;
    (*

    The identifier of the directory.

    *)
}
type nonrec modify_saml_properties_result = unit
type nonrec saml_status_enum =
  1. | ENABLED_WITH_DIRECTORY_LOGIN_FALLBACK
  2. | ENABLED
  3. | DISABLED
type nonrec saml_user_access_url = string
type nonrec saml_properties = {
  1. relay_state_parameter_name : non_empty_string option;
    (*

    The relay state parameter name supported by the SAML 2.0 identity provider (IdP). When the end user is redirected to the user access URL from the WorkSpaces client application, this relay state parameter name is appended as a query parameter to the URL along with the relay state endpoint to return the user to the client application session.

    To use SAML 2.0 authentication with WorkSpaces, the IdP must support IdP-initiated deep linking for the relay state URL. Consult your IdP documentation for more information.

    *)
  2. user_access_url : saml_user_access_url option;
    (*

    The SAML 2.0 identity provider (IdP) user access URL is the URL a user would navigate to in their web browser in order to federate from the IdP and directly access the application, without any SAML 2.0 service provider (SP) bindings.

    *)
  3. status : saml_status_enum option;
    (*

    Indicates the status of SAML 2.0 authentication. These statuses include the following.

    • If the setting is DISABLED, end users will be directed to login with their directory credentials.
    • If the setting is ENABLED, end users will be directed to login via the user access URL. Users attempting to connect to WorkSpaces from a client application that does not support SAML 2.0 authentication will not be able to connect.
    • If the setting is ENABLED_WITH_DIRECTORY_LOGIN_FALLBACK, end users will be directed to login via the user access URL on supported client applications, but will not prevent clients that do not support SAML 2.0 authentication from connecting as if SAML 2.0 authentication was disabled.
    *)
}

Describes the enablement status, user access URL, and relay state parameter name that are used for configuring federation with an SAML 2.0 identity provider.

type nonrec deletable_saml_property =
  1. | SAML_PROPERTIES_RELAY_STATE_PARAMETER_NAME
  2. | SAML_PROPERTIES_USER_ACCESS_URL
type nonrec deletable_saml_properties_list = deletable_saml_property list
type nonrec modify_saml_properties_request = {
  1. properties_to_delete : deletable_saml_properties_list option;
    (*

    The SAML properties to delete as part of your request.

    Specify one of the following options:

    • SAML_PROPERTIES_USER_ACCESS_URL to delete the user access URL.
    • SAML_PROPERTIES_RELAY_STATE_PARAMETER_NAME to delete the relay state parameter name.
    *)
  2. saml_properties : saml_properties option;
    (*

    The properties for configuring SAML 2.0 authentication.

    *)
  3. resource_id : directory_id;
    (*

    The directory identifier for which you want to configure SAML properties.

    *)
}
type nonrec modify_endpoint_encryption_mode_response = unit
type nonrec endpoint_encryption_mode =
  1. | FIPS_VALIDATED
  2. | STANDARD_TLS
type nonrec modify_endpoint_encryption_mode_request = {
  1. endpoint_encryption_mode : endpoint_encryption_mode;
    (*

    The encryption mode used for endpoint connections when streaming to WorkSpaces Personal or WorkSpace Pools.

    *)
  2. directory_id : directory_id;
    (*

    The identifier of the directory.

    *)
}
type nonrec modify_client_properties_result = unit
type nonrec log_upload_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec client_properties = {
  1. log_upload_enabled : log_upload_enum option;
    (*

    Specifies whether users can upload diagnostic log files of Amazon WorkSpaces client directly to WorkSpaces to troubleshoot issues when using the WorkSpaces client. When enabled, the log files will be sent to WorkSpaces automatically and will be applied to all users in the specified directory.

    *)
  2. reconnect_enabled : reconnect_enum option;
    (*

    Specifies whether users can cache their credentials on the Amazon WorkSpaces client. When enabled, users can choose to reconnect to their WorkSpaces without re-entering their credentials.

    *)
}

Describes an Amazon WorkSpaces client.

type nonrec modify_client_properties_request = {
  1. client_properties : client_properties;
    (*

    Information about the Amazon WorkSpaces client.

    *)
  2. resource_id : non_empty_string;
    (*

    The resource identifiers, in the form of directory IDs.

    *)
}
type nonrec modify_certificate_based_auth_properties_result = unit
type nonrec certificate_based_auth_status_enum =
  1. | ENABLED
  2. | DISABLED
type nonrec certificate_authority_arn = string
type nonrec certificate_based_auth_properties = {
  1. certificate_authority_arn : certificate_authority_arn option;
    (*

    The Amazon Resource Name (ARN) of the Amazon Web Services Certificate Manager Private CA resource.

    *)
  2. status : certificate_based_auth_status_enum option;
    (*

    The status of the certificate-based authentication properties.

    *)
}

Describes the properties of the certificate-based authentication you want to use with your WorkSpaces.

type nonrec deletable_certificate_based_auth_property =
  1. | CERTIFICATE_BASED_AUTH_PROPERTIES_CERTIFICATE_AUTHORITY_ARN
type nonrec deletable_certificate_based_auth_properties_list = deletable_certificate_based_auth_property list
type nonrec modify_certificate_based_auth_properties_request = {
  1. properties_to_delete : deletable_certificate_based_auth_properties_list option;
    (*

    The properties of the certificate-based authentication you want to delete.

    *)
  2. certificate_based_auth_properties : certificate_based_auth_properties option;
    (*

    The properties of the certificate-based authentication.

    *)
  3. resource_id : directory_id;
    (*

    The resource identifiers, in the form of directory IDs.

    *)
}
type nonrec message = string
type nonrec modify_account_result = {
  1. message : message option;
    (*

    The text message to describe the status of BYOL modification.

    *)
}
type nonrec dedicated_tenancy_support_enum =
  1. | ENABLED
type nonrec dedicated_tenancy_management_cidr_range = string
type nonrec modify_account_request = {
  1. dedicated_tenancy_management_cidr_range : dedicated_tenancy_management_cidr_range option;
    (*

    The IP address range, specified as an IPv4 CIDR block, for the management network interface. Specify an IP address range that is compatible with your network and in CIDR notation (that is, specify the range as an IPv4 CIDR block). The CIDR block size must be /16 (for example, 203.0.113.25/16). It must also be specified as available by the ListAvailableManagementCidrRanges operation.

    *)
  2. dedicated_tenancy_support : dedicated_tenancy_support_enum option;
    (*

    The status of BYOL.

    *)
}
type nonrec migrate_workspace_result = {
  1. target_workspace_id : workspace_id option;
    (*

    The new identifier of the WorkSpace that is being migrated. If the migration does not succeed, the target WorkSpace ID will not be used, and the WorkSpace will still have the original WorkSpace ID.

    *)
  2. source_workspace_id : workspace_id option;
    (*

    The original identifier of the WorkSpace that is being migrated.

    *)
}
type nonrec migrate_workspace_request = {
  1. bundle_id : bundle_id;
    (*

    The identifier of the target bundle type to migrate the WorkSpace to.

    *)
  2. source_workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace to migrate from.

    *)
}
type nonrec dedicated_tenancy_cidr_range_list = dedicated_tenancy_management_cidr_range list
type nonrec pagination_token = string
type nonrec list_available_management_cidr_ranges_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. management_cidr_ranges : dedicated_tenancy_cidr_range_list option;
    (*

    The list of available IP address ranges, specified as IPv4 CIDR blocks.

    *)
}
type nonrec management_cidr_range_constraint = string
type nonrec management_cidr_range_max_results = int
type nonrec list_available_management_cidr_ranges_request = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. max_results : management_cidr_range_max_results option;
    (*

    The maximum number of items to return.

    *)
  3. management_cidr_range_constraint : management_cidr_range_constraint;
    (*

    The IP address range to search. Specify an IP address range that is compatible with your network and in CIDR notation (that is, specify the range as an IPv4 CIDR block).

    *)
}
type nonrec limit = int
type nonrec import_workspace_image_result = {
  1. image_id : workspace_image_id option;
    (*

    The identifier of the WorkSpace image.

    *)
}
type nonrec ec2_image_id = string
type nonrec workspace_image_ingestion_process =
  1. | BYOL_GRAPHICS_G4DN_BYOP
  2. | BYOL_REGULAR_BYOP
  3. | BYOL_GRAPHICS_G4DN_WSP
  4. | BYOL_REGULAR_WSP
  5. | BYOL_GRAPHICS_G4DN
  6. | BYOL_GRAPHICSPRO
  7. | BYOL_GRAPHICS
  8. | BYOL_REGULAR
type nonrec workspace_image_name = string
type nonrec workspace_image_description = string
type nonrec application =
  1. | Microsoft_Office_2019
  2. | Microsoft_Office_2016
type nonrec application_list = application list
type nonrec import_workspace_image_request = {
  1. applications : application_list option;
    (*

    If specified, the version of Microsoft Office to subscribe to. Valid only for Windows 10 and 11 BYOL images. For more information about subscribing to Office for BYOL images, see Bring Your Own Windows Desktop Licenses.

    • Although this parameter is an array, only one item is allowed at this time.
    • During the image import process, non-GPU DCV (formerly WSP) WorkSpaces with Windows 11 support only Microsoft_Office_2019. GPU DCV (formerly WSP) WorkSpaces with Windows 11 do not support Office installation.
    *)
  2. tags : tag_list option;
    (*

    The tags. Each WorkSpaces resource can have a maximum of 50 tags.

    *)
  3. image_description : workspace_image_description;
    (*

    The description of the WorkSpace image.

    *)
  4. image_name : workspace_image_name;
    (*

    The name of the WorkSpace image.

    *)
  5. ingestion_process : workspace_image_ingestion_process;
    (*

    The ingestion process to be used when importing the image, depending on which protocol you want to use for your BYOL Workspace image, either PCoIP, WSP, or bring your own protocol (BYOP). To use DCV, specify a value that ends in _WSP. To use PCoIP, specify a value that does not end in _WSP. To use BYOP, specify a value that ends in _BYOP.

    For non-GPU-enabled bundles (bundles other than Graphics or GraphicsPro), specify BYOL_REGULAR, BYOL_REGULAR_WSP, or BYOL_REGULAR_BYOP, depending on the protocol.

    The BYOL_REGULAR_BYOP and BYOL_GRAPHICS_G4DN_BYOP values are only supported by Amazon WorkSpaces Core. Contact your account team to be allow-listed to use these values. For more information, see Amazon WorkSpaces Core.

    *)
  6. ec2_image_id : ec2_image_id;
    (*

    The identifier of the EC2 image.

    *)
}
type nonrec custom_workspace_image_import_state =
  1. | ERROR
  2. | COMPLETED
  3. | PUBLISHING
  4. | VALIDATING
  5. | GENERALIZING
  6. | INSTALLING_COMPONENTS
  7. | CREATING_TEST_INSTANCE
  8. | IMAGE_TESTING_GENERALIZATION
  9. | IMAGE_COMPATIBILITY_CHECKING
  10. | UPDATING_OPERATING_SYSTEM
  11. | IMAGE_TESTING_START
  12. | PROCESSING_SOURCE_IMAGE
  13. | IN_PROGRESS
  14. | PENDING
type nonrec import_custom_workspace_image_result = {
  1. state : custom_workspace_image_import_state option;
    (*

    The state of the WorkSpace image.

    *)
  2. image_id : workspace_image_id option;
    (*

    The identifier of the WorkSpace image.

    *)
}
type nonrec image_compute_type =
  1. | GRAPHICS_G6
  2. | GRAPHICS_G4DN
  3. | BASE
type nonrec custom_image_protocol =
  1. | BYOP
  2. | DCV
  3. | PCOIP
type nonrec ec2_import_task_id = string
type nonrec image_build_version_arn = string
type nonrec image_source_identifier =
  1. | Ec2ImageId of ec2_image_id
    (*

    The identifier of the EC2 image.

    *)
  2. | ImageBuildVersionArn of image_build_version_arn
    (*

    The ARN of the EC2 Image Builder image.

    *)
  3. | Ec2ImportTaskId of ec2_import_task_id
    (*

    The EC2 import task ID to import the image from the Amazon EC2 VM import process.

    *)

Describes the image import source.

type nonrec infrastructure_configuration_arn = string
type nonrec platform =
  1. | WINDOWS
type nonrec os_version =
  1. | Windows_11
  2. | Windows_10
type nonrec import_custom_workspace_image_request = {
  1. tags : tag_list option;
    (*

    The resource tags. Each WorkSpaces resource can have a maximum of 50 tags.

    *)
  2. os_version : os_version;
    (*

    The OS version for the WorkSpace image source.

    *)
  3. platform : platform;
    (*

    The platform for the WorkSpace image source.

    *)
  4. infrastructure_configuration_arn : infrastructure_configuration_arn;
    (*

    The infrastructure configuration ARN that specifies how the WorkSpace image is built.

    *)
  5. image_source : image_source_identifier;
    (*

    The options for image import source.

    *)
  6. protocol : custom_image_protocol;
    (*

    The supported protocol for the WorkSpace image. Windows 11 does not support PCOIP protocol.

    *)
  7. compute_type : image_compute_type;
    (*

    The supported compute type for the WorkSpace image.

    *)
  8. image_description : workspace_image_description;
    (*

    The description of the WorkSpace image.

    *)
  9. image_name : workspace_image_name;
    (*

    The name of the WorkSpace image.

    *)
}
type nonrec client_url = string
type nonrec client_email = string
type nonrec client_login_message = string
type nonrec client_locale = string
type nonrec login_message = (client_locale * client_login_message) list
type nonrec default_client_branding_attributes = {
  1. login_message : login_message option;
    (*

    The login message. Specified as a key value pair, in which the key is a locale and the value is the localized message for that locale. The only key supported is en_US. The HTML tags supported include the following: a, b, blockquote, br, cite, code, dd, dl, dt, div, em, i, li, ol, p, pre, q, small, span, strike, strong, sub, sup, u, ul.

    *)
  2. support_email : client_email option;
    (*

    The support email. The company's customer support email address.

    • In each platform type, the SupportEmail and SupportLink parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.
    • The default email is workspaces-feedback@amazon.com.
    *)
  3. logo_url : client_url option;
    (*

    The logo. The only image format accepted is a binary data object that is converted from a .png file.

    *)
}

Returns default client branding attributes that were imported. These attributes display on the client login screen.

Client branding attributes are public facing. Ensure that you don't include sensitive information.

type nonrec ios_client_branding_attributes = {
  1. login_message : login_message option;
    (*

    The login message. Specified as a key value pair, in which the key is a locale and the value is the localized message for that locale. The only key supported is en_US. The HTML tags supported include the following: a, b, blockquote, br, cite, code, dd, dl, dt, div, em, i, li, ol, p, pre, q, small, span, strike, strong, sub, sup, u, ul.

    *)
  2. support_email : client_email option;
    (*

    The support email. The company's customer support email address.

    • In each platform type, the SupportEmail and SupportLink parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.
    • The default email is workspaces-feedback@amazon.com.
    *)
  3. logo3x_url : client_url option;
    (*

    The @3x version of the logo. This is the higher resolution display that offers a scale factor of 3.0 (or @3x).The only image format accepted is a binary data object that is converted from a .png file.

    For more information about iOS image size and resolution, see Image Size and Resolution in the Apple Human Interface Guidelines.

    *)
  4. logo2x_url : client_url option;
    (*

    The @2x version of the logo. This is the higher resolution display that offers a scale factor of 2.0 (or @2x). The only image format accepted is a binary data object that is converted from a .png file.

    For more information about iOS image size and resolution, see Image Size and Resolution in the Apple Human Interface Guidelines.

    *)
  5. logo_url : client_url option;
    (*

    The logo. This is the standard-resolution display that has a 1:1 pixel density (or @1x), where one pixel is equal to one point. The only image format accepted is a binary data object that is converted from a .png file.

    *)
}

The client branding attributes for iOS device types. These attributes are displayed on the iOS client login screen only.

Client branding attributes are public facing. Ensure you do not include sensitive information.

type nonrec import_client_branding_result = {
  1. device_type_web : default_client_branding_attributes option;
    (*

    The branding information configured for web access.

    *)
  2. device_type_linux : default_client_branding_attributes option;
    (*

    The branding information configured for Linux devices.

    *)
  3. device_type_ios : ios_client_branding_attributes option;
    (*

    The branding information configured for iOS devices.

    *)
  4. device_type_android : default_client_branding_attributes option;
    (*

    The branding information configured for Android devices.

    *)
  5. device_type_osx : default_client_branding_attributes option;
    (*

    The branding information configured for macOS devices.

    *)
  6. device_type_windows : default_client_branding_attributes option;
    (*

    The branding information configured for Windows devices.

    *)
}
type nonrec default_import_client_branding_attributes = {
  1. login_message : login_message option;
    (*

    The login message. Specified as a key value pair, in which the key is a locale and the value is the localized message for that locale. The only key supported is en_US. The HTML tags supported include the following: a, b, blockquote, br, cite, code, dd, dl, dt, div, em, i, li, ol, p, pre, q, small, span, strike, strong, sub, sup, u, ul.

    *)
  2. support_email : client_email option;
    (*

    The support email. The company's customer support email address.

    • In each platform type, the SupportEmail and SupportLink parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.
    • The default email is workspaces-feedback@amazon.com.
    *)
}

The default client branding attributes to be imported. These attributes display on the client login screen.

Client branding attributes are public facing. Ensure that you do not include sensitive information.

type nonrec ios_import_client_branding_attributes = {
  1. login_message : login_message option;
    (*

    The login message. Specified as a key value pair, in which the key is a locale and the value is the localized message for that locale. The only key supported is en_US. The HTML tags supported include the following: a, b, blockquote, br, cite, code, dd, dl, dt, div, em, i, li, ol, p, pre, q, small, span, strike, strong, sub, sup, u, ul.

    *)
  2. support_email : client_email option;
    (*

    The support email. The company's customer support email address.

    • In each platform type, the SupportEmail and SupportLink parameters are mutually exclusive. You can specify one parameter for each platform type, but not both.
    • The default email is workspaces-feedback@amazon.com.
    *)
  3. logo3x : ios3_x_logo option;
    (*

    The @3x version of the logo. This is the higher resolution display that offers a scale factor of 3.0 (or @3x). The only image format accepted is a binary data object that is converted from a .png file.

    For more information about iOS image size and resolution, see Image Size and Resolution in the Apple Human Interface Guidelines.

    *)
  4. logo2x : ios2_x_logo option;
    (*

    The @2x version of the logo. This is the higher resolution display that offers a scale factor of 2.0 (or @2x). The only image format accepted is a binary data object that is converted from a .png file.

    For more information about iOS image size and resolution, see Image Size and Resolution in the Apple Human Interface Guidelines.

    *)
}

The client branding attributes to import for iOS device types. These attributes are displayed on the iOS client login screen.

Client branding attributes are public facing. Ensure you do not include sensitive information.

type nonrec import_client_branding_request = {
  1. device_type_web : default_import_client_branding_attributes option;
    (*

    The branding information to import for web access.

    *)
  2. device_type_linux : default_import_client_branding_attributes option;
    (*

    The branding information to import for Linux devices.

    *)
  3. device_type_ios : ios_import_client_branding_attributes option;
    (*

    The branding information to import for iOS devices.

    *)
  4. device_type_android : default_import_client_branding_attributes option;
    (*

    The branding information to import for Android devices.

    *)
  5. device_type_osx : default_import_client_branding_attributes option;
    (*

    The branding information to import for macOS devices.

    *)
  6. device_type_windows : default_import_client_branding_attributes option;
    (*

    The branding information to import for Windows devices.

    *)
  7. resource_id : directory_id;
    (*

    The directory identifier of the WorkSpace for which you want to import client branding.

    *)
}
type nonrec resource_in_use_exception = {
  1. resource_id : non_empty_string option;
    (*

    The ID of the resource that is in use.

    *)
  2. message : exception_message option;
}

The specified resource is currently in use.

type nonrec work_space_associated_resource_type =
  1. | APPLICATION
type nonrec association_state =
  1. | REMOVED
  2. | COMPLETED
  3. | ERROR
  4. | UNINSTALLING
  5. | INSTALLING
  6. | PENDING_UNINSTALL_DEPLOYMENT
  7. | PENDING_UNINSTALL
  8. | PENDING_INSTALL_DEPLOYMENT
  9. | PENDING_INSTALL
type nonrec association_error_code =
  1. | APPLICATION_OLDVERSIONEXIST_FAILURE
  2. | WORKSPACE_UNREACHABLE
  3. | INTERNAL_SERVER_ERROR
  4. | UNSUPPORTED_OPERATING_SYSTEM
  5. | INSUFFICIENT_MEMORY
  6. | INSUFFICIENT_DISKSPACE
type nonrec string2048 = string
type nonrec association_state_reason = {
  1. error_message : string2048 option;
    (*

    The error message of the association deployment failure.

    *)
  2. error_code : association_error_code option;
    (*

    The error code of the association deployment failure.

    *)
}

Indicates the reason that the association deployment failed, including the error code and error message.

type nonrec workspace_resource_association = {
  1. workspace_id : workspace_id option;
    (*

    The identifier of the WorkSpace.

    *)
  2. state_reason : association_state_reason option;
    (*

    The reason the association deployment failed.

    *)
  3. state : association_state option;
    (*

    The status of the WorkSpace resource association.

    *)
  4. last_updated_time : timestamp option;
    (*

    The time the association status was last updated.

    *)
  5. created : timestamp option;
    (*

    The time the association is created.

    *)
  6. associated_resource_type : work_space_associated_resource_type option;
    (*

    The resource types of the associated resource.

    *)
  7. associated_resource_id : non_empty_string option;
    (*

    The identifier of the associated resource.

    *)
}

Describes the association between an application and a WorkSpace resource.

type nonrec disassociate_workspace_application_result = {
  1. association : workspace_resource_association option;
    (*

    Information about the targeted association.

    *)
}
type nonrec work_space_application_id = string
type nonrec disassociate_workspace_application_request = {
  1. application_id : work_space_application_id;
    (*

    The identifier of the application.

    *)
  2. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}
type nonrec disassociate_ip_groups_result = unit
type nonrec ip_group_id_list = ip_group_id list
type nonrec disassociate_ip_groups_request = {
  1. group_ids : ip_group_id_list;
    (*

    The identifiers of one or more IP access control groups.

    *)
  2. directory_id : directory_id;
    (*

    The identifier of the directory.

    *)
}
type nonrec disassociate_connection_alias_result = unit
type nonrec disassociate_connection_alias_request = {
  1. alias_id : connection_alias_id;
    (*

    The identifier of the connection alias to disassociate.

    *)
}
type nonrec authentication_type =
  1. | SAML
type nonrec session_connection_state =
  1. | NOT_CONNECTED
  2. | CONNECTED
type nonrec session_instance_id = string
type nonrec network_access_configuration = {
  1. eni_id : non_empty_string option;
    (*

    The resource identifier of the elastic network interface that is attached to instances in your VPC. All network interfaces have the eni-xxxxxxxx resource identifier.

    *)
  2. eni_private_ip_address : non_empty_string option;
    (*

    The private IP address of the elastic network interface that is attached to instances in your VPC.

    *)
}

Describes the network details of a WorkSpaces Pool.

type nonrec workspaces_pool_user_id = string
type nonrec workspaces_pool_session = {
  1. user_id : workspaces_pool_user_id;
    (*

    The identifier of the user.

    *)
  2. start_time : timestamp option;
    (*

    The time that the pool sission started.

    *)
  3. network_access_configuration : network_access_configuration option;
    (*

    Describes the network details of the pool.

    *)
  4. expiration_time : timestamp option;
    (*

    The time that the pool session ended.

    *)
  5. pool_id : workspaces_pool_id;
    (*

    The identifier of the pool.

    *)
  6. instance_id : session_instance_id option;
    (*

    The identifier for the instance hosting the session.

    *)
  7. session_id : amazon_uuid;
    (*

    The identifier of the session.

    *)
  8. connection_state : session_connection_state option;
    (*

    Specifies whether a user is connected to the pool session.

    *)
  9. authentication_type : authentication_type option;
    (*

    The authentication method. The user is authenticated using a WorkSpaces Pools URL (API) or SAML 2.0 federation (SAML).

    *)
}

Describes a pool session.

type nonrec workspaces_pool_sessions = workspaces_pool_session list
type nonrec describe_workspaces_pool_sessions_result = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. sessions : workspaces_pool_sessions option;
    (*

    Describes the pool sessions.

    *)
}
type nonrec limit50 = int
type nonrec describe_workspaces_pool_sessions_request = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. limit : limit50 option;
    (*

    The maximum size of each page of results. The default value is 20 and the maximum value is 50.

    *)
  3. user_id : workspaces_pool_user_id option;
    (*

    The identifier of the user.

    *)
  4. pool_id : workspaces_pool_id;
    (*

    The identifier of the pool.

    *)
}
type nonrec workspaces_pools = workspaces_pool list
type nonrec describe_workspaces_pools_result = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. workspaces_pools : workspaces_pools option;
    (*

    Information about the WorkSpaces Pools.

    *)
}
type nonrec workspaces_pool_ids = workspaces_pool_id list
type nonrec describe_workspaces_pools_filter_name =
  1. | POOLNAME
type nonrec describe_workspaces_pools_filter_value = string
type nonrec describe_workspaces_pools_filter_values = describe_workspaces_pools_filter_value list
type nonrec describe_workspaces_pools_filter_operator =
  1. | NOTCONTAINS
  2. | CONTAINS
  3. | NOTEQUALS
  4. | EQUALS
type nonrec describe_workspaces_pools_filter = {
  1. operator : describe_workspaces_pools_filter_operator;
    (*

    The operator values for filtering WorkSpaces Pools.

    *)
  2. values : describe_workspaces_pools_filter_values;
    (*

    The values for filtering WorkSpaces Pools.

    *)
  3. name : describe_workspaces_pools_filter_name;
    (*

    The name of the pool to filter.

    *)
}

Describes the filter conditions for WorkSpaces Pools to return.

type nonrec describe_workspaces_pools_filters = describe_workspaces_pools_filter list
type nonrec describe_workspaces_pools_request = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. limit : limit option;
    (*

    The maximum number of items to return.

    *)
  3. filters : describe_workspaces_pools_filters option;
    (*

    The filter conditions for the WorkSpaces Pool to return.

    *)
  4. pool_ids : workspaces_pool_ids option;
    (*

    The identifier of the WorkSpaces Pools.

    *)
}
type nonrec snapshot = {
  1. snapshot_time : timestamp option;
    (*

    The time when the snapshot was created.

    *)
}

Describes a snapshot.

type nonrec snapshot_list = snapshot list
type nonrec describe_workspace_snapshots_result = {
  1. restore_snapshots : snapshot_list option;
    (*

    Information about the snapshots that can be used to restore a WorkSpace. These snapshots include both the root volume and the user volume.

    *)
  2. rebuild_snapshots : snapshot_list option;
    (*

    Information about the snapshots that can be used to rebuild a WorkSpace. These snapshots include the user volume.

    *)
}
type nonrec describe_workspace_snapshots_request = {
  1. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}
type nonrec connection_state =
  1. | UNKNOWN
  2. | DISCONNECTED
  3. | CONNECTED
type nonrec workspace_connection_status = {
  1. last_known_user_connection_timestamp : timestamp option;
    (*

    The timestamp of the last known user connection.

    *)
  2. connection_state_check_timestamp : timestamp option;
    (*

    The timestamp of the connection status check.

    *)
  3. connection_state : connection_state option;
    (*

    The connection state of the WorkSpace. The connection state is unknown if the WorkSpace is stopped.

    *)
  4. workspace_id : workspace_id option;
    (*

    The identifier of the WorkSpace.

    *)
}

Describes the connection status of a WorkSpace.

type nonrec workspace_connection_status_list = workspace_connection_status list
type nonrec describe_workspaces_connection_status_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. workspaces_connection_status : workspace_connection_status_list option;
    (*

    Information about the connection status of the WorkSpace.

    *)
}
type nonrec workspace_id_list = workspace_id list
type nonrec describe_workspaces_connection_status_request = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. workspace_ids : workspace_id_list option;
    (*

    The identifiers of the WorkSpaces. You can specify up to 25 WorkSpaces.

    *)
}
type nonrec user_name = string
type nonrec ip_address = string
type nonrec ipv6_address = string
type nonrec workspace_state =
  1. | ERROR
  2. | STOPPED
  3. | STOPPING
  4. | UPDATING
  5. | SUSPENDED
  6. | TERMINATED
  7. | TERMINATING
  8. | ADMIN_MAINTENANCE
  9. | MAINTENANCE
  10. | RESTORING
  11. | REBUILDING
  12. | STARTING
  13. | REBOOTING
  14. | UNHEALTHY
  15. | IMPAIRED
  16. | AVAILABLE
  17. | PENDING
type nonrec workspace_error_code = string
type nonrec computer_name = string
type nonrec volume_encryption_key = string
type nonrec workspace_name = string
type nonrec modification_resource_enum =
  1. | PROTOCOL
  2. | COMPUTE_TYPE
  3. | USER_VOLUME
  4. | ROOT_VOLUME
type nonrec modification_state_enum =
  1. | UPDATE_FAILED
  2. | UPDATE_IN_PROGRESS
  3. | UPDATE_INITIATED
type nonrec modification_state = {
  1. state : modification_state_enum option;
    (*

    The modification state.

    *)
  2. resource : modification_resource_enum option;
    (*

    The resource.

    *)
}

Describes a WorkSpace modification.

type nonrec modification_state_list = modification_state list
type nonrec region = string
type nonrec standby_workspace_relationship_type =
  1. | STANDBY
  2. | PRIMARY

Describes the related WorkSpace. The related WorkSpace could be a standby WorkSpace or primary WorkSpace related to the specified WorkSpace.

type nonrec data_replication_settings = {
  1. recovery_snapshot_time : timestamp option;
    (*

    The date and time at which the last successful snapshot was taken of the primary WorkSpace used for replicating data.

    *)
  2. data_replication : data_replication option;
    (*

    Indicates whether data replication is enabled, and if enabled, the type of data replication.

    *)
}

Describes the data replication settings.

type nonrec standby_workspaces_properties = {
  1. recovery_snapshot_time : timestamp option;
    (*

    The date and time at which the last successful snapshot was taken of the primary WorkSpace used for replicating data.

    *)
  2. data_replication : data_replication option;
    (*

    Indicates whether data replication is enabled, and if enabled, the type of data replication.

    *)
  3. standby_workspace_id : workspace_id option;
    (*

    The identifier of the standby WorkSpace

    *)
}

Describes the properties of the related standby WorkSpaces.

type nonrec standby_workspaces_properties_list = standby_workspaces_properties list
type nonrec workspace = {
  1. standby_workspaces_properties : standby_workspaces_properties_list option;
    (*

    The properties of the standby WorkSpace

    *)
  2. data_replication_settings : data_replication_settings option;
    (*

    Indicates the settings of the data replication.

    *)
  3. related_workspaces : related_workspaces option;
    (*

    The standby WorkSpace or primary WorkSpace related to the specified WorkSpace.

    *)
  4. modification_states : modification_state_list option;
    (*

    The modification states of the WorkSpace.

    *)
  5. workspace_properties : workspace_properties option;
    (*

    The properties of the WorkSpace.

    *)
  6. workspace_name : workspace_name option;
    (*

    The name of the user-decoupled WorkSpace.

    *)
  7. root_volume_encryption_enabled : boolean_object option;
    (*

    Indicates whether the data stored on the root volume is encrypted.

    *)
  8. user_volume_encryption_enabled : boolean_object option;
    (*

    Indicates whether the data stored on the user volume is encrypted.

    *)
  9. volume_encryption_key : volume_encryption_key option;
    (*

    The ARN of the symmetric KMS key used to encrypt data stored on your WorkSpace. Amazon WorkSpaces does not support asymmetric KMS keys.

    *)
  10. computer_name : computer_name option;
    (*

    The name of the WorkSpace, as seen by the operating system. The format of this name varies. For more information, see Launch a WorkSpace.

    *)
  11. error_code : workspace_error_code option;
    (*

    The error code that is returned if the WorkSpace cannot be created.

    *)
  12. error_message : description option;
    (*

    The text of the error message that is returned if the WorkSpace cannot be created.

    *)
  13. subnet_id : subnet_id option;
    (*

    The identifier of the subnet for the WorkSpace.

    *)
  14. bundle_id : bundle_id option;
    (*

    The identifier of the bundle used to create the WorkSpace.

    *)
  15. state : workspace_state option;
    (*

    The operational state of the WorkSpace.

    • PENDING – The WorkSpace is in a waiting state (for example, the WorkSpace is being created).
    • AVAILABLE – The WorkSpace is running and has passed the health checks.
    • IMPAIRED – Refer to UNHEALTHY state.
    • UNHEALTHY – The WorkSpace is not responding to health checks.
    • REBOOTING – The WorkSpace is being rebooted (restarted).
    • STARTING – The WorkSpace is starting up and health checks are being run.
    • REBUILDING – The WorkSpace is being rebuilt.
    • RESTORING – The WorkSpace is being restored.
    • MAINTENANCE – The WorkSpace is undergoing scheduled maintenance by Amazon Web Services.
    • ADMIN_MAINTENANCE – The WorkSpace is undergoing maintenance by the WorkSpaces administrator.
    • TERMINATING – The WorkSpace is being deleted.
    • TERMINATED – The WorkSpace has been deleted.
    • SUSPENDED – The WorkSpace has been suspended for image creation.
    • UPDATING – The WorkSpace is undergoing an update.
    • STOPPING – The WorkSpace is being stopped.
    • STOPPED – The WorkSpace has been stopped.
    • ERROR – The WorkSpace is an error state (for example, an error occurred during startup).

    After a WorkSpace is terminated, the TERMINATED state is returned only briefly before the WorkSpace directory metadata is cleaned up, so this state is rarely returned. To confirm that a WorkSpace is terminated, check for the WorkSpace ID by using DescribeWorkSpaces. If the WorkSpace ID isn't returned, then the WorkSpace has been successfully terminated.

    *)
  16. ipv6_address : ipv6_address option;
    (*

    The IPv6 address of the WorkSpace.

    *)
  17. ip_address : ip_address option;
    (*

    The IP address of the WorkSpace.

    *)
  18. user_name : user_name option;
    (*

    The user for the WorkSpace.

    *)
  19. directory_id : directory_id option;
    (*

    The identifier of the Directory Service directory for the WorkSpace.

    *)
  20. workspace_id : workspace_id option;
    (*

    The identifier of the WorkSpace.

    *)
}

Describes a WorkSpace.

type nonrec workspace_list = workspace list
type nonrec describe_workspaces_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. workspaces : workspace_list option;
    (*

    Information about the WorkSpaces.

    Because CreateWorkspaces is an asynchronous operation, some of the returned information could be incomplete.

    *)
}
type nonrec describe_workspaces_request = {
  1. workspace_name : workspace_name option;
    (*

    The name of the user-decoupled WorkSpace.

    *)
  2. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  3. limit : limit option;
    (*

    The maximum number of items to return.

    *)
  4. bundle_id : bundle_id option;
    (*

    The identifier of the bundle. All WorkSpaces that are created from this bundle are retrieved. You cannot combine this parameter with any other filter.

    *)
  5. user_name : user_name option;
    (*

    The name of the directory user. You must specify this parameter with DirectoryId.

    *)
  6. directory_id : directory_id option;
    (*

    The identifier of the directory. In addition, you can optionally specify a specific directory user (see UserName). You cannot combine this parameter with any other filter.

    *)
  7. workspace_ids : workspace_id_list option;
    (*

    The identifiers of the WorkSpaces. You cannot combine this parameter 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.

    *)
}
type nonrec operating_system_type =
  1. | LINUX
  2. | WINDOWS
type nonrec operating_system = {
  1. type_ : operating_system_type option;
    (*

    The operating system.

    *)
}

The operating system that the image is running.

type nonrec workspace_image_state =
  1. | ERROR
  2. | PENDING
  3. | AVAILABLE
type nonrec workspace_image_required_tenancy =
  1. | DEDICATED
  2. | DEFAULT
type nonrec workspace_image_error_code = string
type nonrec update_result = {
  1. description : update_description option;
    (*

    A description of whether updates for the WorkSpace image are pending or available.

    *)
  2. update_available : boolean_object option;
    (*

    Indicates whether updated drivers or other components are available for the specified WorkSpace image.

    *)
}

Describes whether a WorkSpace image needs to be updated with the latest drivers and other components required by Amazon WorkSpaces.

Only Windows 10 WorkSpace images can be programmatically updated at this time.

type nonrec workspace_image_error_detail_code =
  1. | RESTRICTED_DRIVE_LETTER
  2. | INCOMPATIBLE_MEMORY_INTEGRITY
  3. | INCOMPATIBLE_PROTOCOL
  4. | INSUFFICIENT_REARM_COUNT
  5. | UNSUPPORTED_OS_UPGRADE
  6. | STAGED_APPX_PACKAGE
  7. | MULTIPLE_USER_PROFILES
  8. | UNSUPPORTED_SECURITY_PROTOCOL
  9. | AMAZON_SSM_AGENT_ENABLED
  10. | WINDOWS_MODULES_INSTALLER_DISABLED
  11. | REMOTE_DESKTOP_SERVICES_DISABLED
  12. | INVALID_IP
  13. | DOMAIN_ACCOUNT_SERVICES_FOUND
  14. | ENVIRONMENT_VARIABLES_PATH_MISSING_ENTRIES
  15. | INSUFFICIENT_DISK_SPACE
  16. | USER_PROFILE_MISSING
  17. | SYSPREP_FILE_MISSING
  18. | WINDOWS_UPDATES_REQUIRED
  19. | ADDITIONAL_DRIVES_PRESENT
  20. | RESERVED_STORAGE_IN_USE
  21. | APPX_PACKAGES_INSTALLED
  22. | UNKNOWN_ERROR
  23. | UEFI_NOT_SUPPORTED
  24. | ANTI_VIRUS_INSTALLED
  25. | IN_PLACE_UPGRADE
  26. | ZERO_REARM_COUNT
  27. | SIXTY_FOUR_BIT_OS
  28. | MULTIPLE_BOOT_PARTITION
  29. | REALTIME_UNIVERSAL_DISABLED
  30. | AUTO_LOGON_ENABLED
  31. | PENDING_REBOOT
  32. | INCOMPATIBLE_PARTITIONING
  33. | DISK_SIZE_EXCEEDED
  34. | VMWARE_TOOLS_INSTALLED
  35. | FIREWALL_ENABLED
  36. | AZURE_DOMAIN_JOINED
  37. | DOMAIN_JOINED
  38. | OS_NOT_SUPPORTED
  39. | ADDITIONAL_DRIVES_ATTACHED
  40. | DISK_FREE_SPACE
  41. | DHCP_DISABLED
  42. | WORKSPACES_BYOL_ACCOUNT_DISABLED
  43. | WORKSPACES_BYOL_ACCOUNT_NOT_FOUND
  44. | AUTO_MOUNT_DISABLED
  45. | WINDOWS_UPDATES_ENABLED
  46. | PCOIP_AGENT_INSTALLED
  47. | OFFICE_INSTALLED
  48. | OUTDATED_POWERSHELL_VERSION
type nonrec error_details = {
  1. error_message : description option;
    (*

    The text of the error message related the error code.

    *)
  2. error_code : workspace_image_error_detail_code option;
    (*

    Indicates the error code returned.

    *)
}

Describes in-depth details about the error. These details include the possible causes of the error and troubleshooting information.

type nonrec error_details_list = error_details list
type nonrec workspace_image = {
  1. error_details : error_details_list option;
    (*

    Additional details of the error returned for the image, including the possible causes of the errors and troubleshooting information.

    *)
  2. updates : update_result option;
    (*

    The updates (if any) that are available for the specified image.

    *)
  3. owner_account_id : aws_account option;
    (*

    The identifier of the Amazon Web Services account that owns the image.

    *)
  4. created : timestamp option;
    (*

    The date when the image was created. If the image has been shared, the Amazon Web Services account that the image has been shared with sees the original creation date of the image.

    *)
  5. error_message : description option;
    (*

    The text of the error message that is returned for the image.

    *)
  6. error_code : workspace_image_error_code option;
    (*

    The error code that is returned for the image.

    *)
  7. required_tenancy : workspace_image_required_tenancy option;
    (*

    Specifies whether the image is running on dedicated hardware. When Bring Your Own License (BYOL) is enabled, this value is set to DEDICATED. For more information, see Bring Your Own Windows Desktop Images.

    *)
  8. state : workspace_image_state option;
    (*

    The status of the image.

    *)
  9. operating_system : operating_system option;
    (*

    The operating system that the image is running.

    *)
  10. description : workspace_image_description option;
    (*

    The description of the image.

    *)
  11. name : workspace_image_name option;
    (*

    The name of the image.

    *)
  12. image_id : workspace_image_id option;
    (*

    The identifier of the image.

    *)
}

Describes a WorkSpace image.

type nonrec workspace_image_list = workspace_image list
type nonrec describe_workspace_images_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. images : workspace_image_list option;
    (*

    Information about the images.

    *)
}
type nonrec workspace_image_id_list = workspace_image_id list
type nonrec image_type =
  1. | SHARED
  2. | OWNED
type nonrec describe_workspace_images_request = {
  1. max_results : limit option;
    (*

    The maximum number of items to return.

    *)
  2. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  3. image_type : image_type option;
    (*

    The type (owned or shared) of the image.

    *)
  4. image_ids : workspace_image_id_list option;
    (*

    The identifier of the image.

    *)
}
type nonrec image_permission = {
  1. shared_account_id : aws_account option;
    (*

    The identifier of the Amazon Web Services account that an image has been shared with.

    *)
}

Describes the Amazon Web Services accounts that have been granted permission to use a shared image. For more information about sharing images, see Share or Unshare a Custom WorkSpaces Image.

type nonrec image_permissions = image_permission list
type nonrec describe_workspace_image_permissions_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. image_permissions : image_permissions option;
    (*

    The identifiers of the Amazon Web Services accounts that the image has been shared with.

    *)
  3. image_id : workspace_image_id option;
    (*

    The identifier of the image.

    *)
}
type nonrec describe_workspace_image_permissions_request = {
  1. max_results : limit option;
    (*

    The maximum number of items to return.

    *)
  2. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  3. image_id : workspace_image_id;
    (*

    The identifier of the image.

    *)
}
type nonrec alias = string
type nonrec directory_name = string
type nonrec registration_code = string
type nonrec dns_ip_addresses = ip_address list
type nonrec dns_ipv6_addresses = ipv6_address list
type nonrec workspace_directory_type =
  1. | AWS_IAM_IDENTITY_CENTER
  2. | CUSTOMER_MANAGED
  3. | AD_CONNECTOR
  4. | SIMPLE_AD
type nonrec default_workspace_creation_properties = {
  1. instance_iam_role_arn : ar_n option;
    (*

    Indicates the IAM role ARN of the instance.

    *)
  2. enable_maintenance_mode : boolean_object option;
    (*

    Specifies whether maintenance mode is enabled for WorkSpaces. For more information, see WorkSpace Maintenance.

    *)
  3. user_enabled_as_local_administrator : boolean_object option;
    (*

    Specifies whether WorkSpace users are local administrators on their WorkSpaces.

    *)
  4. custom_security_group_id : security_group_id option;
    (*

    The identifier of the default security group to apply to WorkSpaces when they are created. For more information, see Security Groups for Your WorkSpaces.

    *)
  5. default_ou : default_ou option;
    (*

    The organizational unit (OU) in the directory for the WorkSpace machine accounts.

    *)
  6. enable_internet_access : boolean_object option;
    (*

    Specifies whether to automatically assign an Elastic public IP address to WorkSpaces in this directory by default. If enabled, the Elastic public IP address allows outbound internet access from your WorkSpaces when you’re using an internet gateway in the Amazon VPC in which your WorkSpaces are located. If you're using a Network Address Translation (NAT) gateway for outbound internet access from your VPC, or if your WorkSpaces are in public subnets and you manually assign them Elastic IP addresses, you should disable this setting. This setting applies to new WorkSpaces that you launch or to existing WorkSpaces that you rebuild. For more information, see Configure a VPC for Amazon WorkSpaces.

    *)
}

Describes the default values that are used to create WorkSpaces. For more information, see Update Directory Details for Your WorkSpaces.

type nonrec idc_config = {
  1. application_arn : ar_n option;
    (*

    The Amazon Resource Name (ARN) of the application.

    *)
  2. instance_arn : ar_n option;
    (*

    The Amazon Resource Name (ARN) of the identity center instance.

    *)
}

Specifies the configurations of the identity center.

type nonrec workspace_directory = {
  1. error_message : description option;
    (*

    The error message returned.

    *)
  2. streaming_properties : streaming_properties option;
    (*

    The streaming properties to configure.

    *)
  3. active_directory_config : active_directory_config option;
    (*

    Information about the Active Directory config.

    *)
  4. idc_config : idc_config option;
    (*

    Specifies details about identity center configurations.

    *)
  5. workspace_type : workspace_type option;
    (*

    Indicates whether the directory's WorkSpace type is personal or pools.

    *)
  6. user_identity_type : user_identity_type option;
    (*

    Indicates the identity type of the specifired user.

    *)
  7. workspace_directory_description : workspace_directory_description option;
    (*

    The description of the WorkSpace directory

    *)
  8. workspace_directory_name : workspace_directory_name option;
    (*

    The name fo the WorkSpace directory.

    *)
  9. microsoft_entra_config : microsoft_entra_config option;
    (*

    Specifies details about Microsoft Entra configurations.

    *)
  10. endpoint_encryption_mode : endpoint_encryption_mode option;
    (*

    Endpoint encryption mode that allows you to configure the specified directory between Standard TLS and FIPS 140-2 validated mode.

    *)
  11. certificate_based_auth_properties : certificate_based_auth_properties option;
    (*

    The certificate-based authentication properties used to authenticate SAML 2.0 Identity Provider (IdP) user identities to Active Directory for WorkSpaces login.

    *)
  12. saml_properties : saml_properties option;
    (*

    Describes the enablement status, user access URL, and relay state parameter name that are used for configuring federation with an SAML 2.0 identity provider.

    *)
  13. selfservice_permissions : selfservice_permissions option;
    (*

    The default self-service permissions for WorkSpaces in the directory.

    *)
  14. tenancy : tenancy option;
    (*

    Specifies whether the directory is dedicated or shared. To use Bring Your Own License (BYOL), this value must be set to DEDICATED. For more information, see Bring Your Own Windows Desktop Images.

    *)
  15. workspace_access_properties : workspace_access_properties option;
    (*

    The devices and operating systems that users can use to access WorkSpaces.

    *)
  16. ip_group_ids : ip_group_id_list option;
    (*

    The identifiers of the IP access control groups associated with the directory.

    *)
  17. workspace_creation_properties : default_workspace_creation_properties option;
    (*

    The default creation properties for all WorkSpaces in the directory.

    *)
  18. state : workspace_directory_state option;
    (*

    The state of the directory's registration with Amazon WorkSpaces. After a directory is deregistered, the DEREGISTERED state is returned very briefly before the directory metadata is cleaned up, so this state is rarely returned. To confirm that a directory is deregistered, check for the directory ID by using DescribeWorkspaceDirectories. If the directory ID isn't returned, then the directory has been successfully deregistered.

    *)
  19. workspace_security_group_id : security_group_id option;
    (*

    The identifier of the security group that is assigned to new WorkSpaces.

    *)
  20. directory_type : workspace_directory_type option;
    (*

    The directory type.

    *)
  21. iam_role_id : ar_n option;
    (*

    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.

    *)
  22. customer_user_name : user_name option;
    (*

    The user name for the service account.

    *)
  23. dns_ipv6_addresses : dns_ipv6_addresses option;
    (*

    The IPv6 addresses of the DNS servers for the directory.

    *)
  24. dns_ip_addresses : dns_ip_addresses option;
    (*

    The IP addresses of the DNS servers for the directory.

    *)
  25. subnet_ids : subnet_ids option;
    (*

    The identifiers of the subnets used with the directory.

    *)
  26. registration_code : registration_code option;
    (*

    The registration code for the directory. This is the code that users enter in their Amazon WorkSpaces client application to connect to the directory.

    *)
  27. directory_name : directory_name option;
    (*

    The name of the directory.

    *)
  28. alias : alias option;
    (*

    The directory alias.

    *)
  29. directory_id : directory_id option;
    (*

    The directory identifier.

    *)
}

Describes a directory that is used with Amazon WorkSpaces.

type nonrec directory_list = workspace_directory list
type nonrec describe_workspace_directories_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. directories : directory_list option;
    (*

    Information about the directories.

    *)
}
type nonrec directory_id_list = directory_id list
type nonrec workspace_directory_name_list = workspace_directory_name list
type nonrec describe_workspace_directories_filter_name =
  1. | WORKSPACE_TYPE
  2. | USER_IDENTITY_TYPE
type nonrec describe_workspace_directories_filter_value = string
type nonrec describe_workspace_directories_filter_values = describe_workspace_directories_filter_value list
type nonrec describe_workspace_directories_filter = {
  1. values : describe_workspace_directories_filter_values;
    (*

    The values for filtering WorkSpaces

    *)
  2. name : describe_workspace_directories_filter_name;
    (*

    The name of the WorkSpaces to filter.

    *)
}

Describes the filter conditions for the WorkSpaces to return.

type nonrec describe_workspace_directories_filter_list = describe_workspace_directories_filter list
type nonrec describe_workspace_directories_request = {
  1. filters : describe_workspace_directories_filter_list option;
    (*

    The filter condition for the WorkSpaces.

    *)
  2. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  3. limit : limit option;
    (*

    The maximum number of directories to return.

    *)
  4. workspace_directory_names : workspace_directory_name_list option;
    (*

    The names of the WorkSpace directories.

    *)
  5. directory_ids : directory_id_list option;
    (*

    The identifiers of the directories. If the value is null, all directories are retrieved.

    *)
}
type nonrec bundle_owner = string
type nonrec root_storage = {
  1. capacity : non_empty_string;
    (*

    The size of the root volume.

    *)
}

Describes the root volume for a WorkSpace bundle.

type nonrec user_storage = {
  1. capacity : non_empty_string;
    (*

    The size of the user volume.

    *)
}

Describes the user volume for a WorkSpace bundle.

type nonrec compute_type = {
  1. name : compute option;
    (*

    The compute type.

    *)
}

Describes the compute type of the bundle.

type nonrec workspace_bundle_state =
  1. | ERROR
  2. | PENDING
  3. | AVAILABLE
type nonrec bundle_type =
  1. | STANDBY
  2. | REGULAR
type nonrec workspace_bundle = {
  1. bundle_type : bundle_type option;
    (*

    The type of WorkSpace bundle.

    *)
  2. state : workspace_bundle_state option;
    (*

    The state of the WorkSpace bundle.

    *)
  3. creation_time : timestamp option;
    (*

    The time when the bundle was created.

    *)
  4. last_updated_time : timestamp option;
    (*

    The last time that the bundle was updated.

    *)
  5. compute_type : compute_type option;
    (*

    The compute type of the bundle. For more information, see Amazon WorkSpaces Bundles.

    *)
  6. user_storage : user_storage option;
    (*

    The size of the user volume.

    *)
  7. root_storage : root_storage option;
    (*

    The size of the root volume.

    *)
  8. image_id : workspace_image_id option;
    (*

    The identifier of the image that was used to create the bundle.

    *)
  9. description : description option;
    (*

    The description of the bundle.

    *)
  10. owner : bundle_owner option;
    (*

    The owner of the bundle. This is the account identifier of the owner, or AMAZON if the bundle is provided by Amazon Web Services.

    *)
  11. name : non_empty_string option;
    (*

    The name of the bundle.

    *)
  12. bundle_id : bundle_id option;
    (*

    The identifier of the bundle.

    *)
}

Describes a WorkSpace bundle.

type nonrec bundle_list = workspace_bundle list
type nonrec describe_workspace_bundles_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return. This token is valid for one day and must be used within that time frame.

    *)
  2. bundles : bundle_list option;
    (*

    Information about the bundles.

    *)
}
type nonrec bundle_id_list = bundle_id list
type nonrec describe_workspace_bundles_request = {
  1. next_token : pagination_token option;
    (*

    The token for the next set of results. (You received this token from a previous call.)

    *)
  2. owner : bundle_owner option;
    (*

    The owner of the bundles. You cannot combine this parameter with any other filter.

    To describe the bundles provided by Amazon Web Services, specify AMAZON. To describe the bundles that belong to your account, don't specify a value.

    *)
  3. bundle_ids : bundle_id_list option;
    (*

    The identifiers of the bundles. You cannot combine this parameter with any other filter.

    *)
}
type nonrec workspace_resource_association_list = workspace_resource_association list
type nonrec describe_workspace_associations_result = {
  1. associations : workspace_resource_association_list option;
    (*

    List of information about the specified associations.

    *)
}
type nonrec work_space_associated_resource_type_list = work_space_associated_resource_type list
type nonrec describe_workspace_associations_request = {
  1. associated_resource_types : work_space_associated_resource_type_list;
    (*

    The resource types of the associated resources.

    *)
  2. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}
type nonrec describe_tags_result = {
  1. tag_list : tag_list option;
    (*

    The tags.

    *)
}
type nonrec describe_tags_request = {
  1. resource_id : non_empty_string;
    (*

    The identifier of the WorkSpaces resource. The supported resource types are WorkSpaces, registered directories, images, custom bundles, IP access control groups, and connection aliases.

    *)
}
type nonrec ip_group_name = string
type nonrec ip_group_desc = string
type nonrec workspaces_ip_group = {
  1. user_rules : ip_rule_list option;
    (*

    The rules.

    *)
  2. group_desc : ip_group_desc option;
    (*

    The description of the group.

    *)
  3. group_name : ip_group_name option;
    (*

    The name of the group.

    *)
  4. group_id : ip_group_id option;
    (*

    The identifier of the group.

    *)
}

Describes an IP access control group.

type nonrec workspaces_ip_groups_list = workspaces_ip_group list
type nonrec describe_ip_groups_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. result_ : workspaces_ip_groups_list option;
    (*

    Information about the IP access control groups.

    *)
}
type nonrec describe_ip_groups_request = {
  1. max_results : limit option;
    (*

    The maximum number of items to return.

    *)
  2. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  3. group_ids : ip_group_id_list option;
    (*

    The identifiers of one or more IP access control groups.

    *)
}
type nonrec image_associated_resource_type =
  1. | APPLICATION
type nonrec image_resource_association = {
  1. state_reason : association_state_reason option;
    (*

    The reason the association deployment failed.

    *)
  2. state : association_state option;
    (*

    The status of the image resource association.

    *)
  3. image_id : workspace_image_id option;
    (*

    The identifier of the image.

    *)
  4. last_updated_time : timestamp option;
    (*

    The time the association status was last updated.

    *)
  5. created : timestamp option;
    (*

    The time the association is created.

    *)
  6. associated_resource_type : image_associated_resource_type option;
    (*

    The resource type of the associated resources.

    *)
  7. associated_resource_id : non_empty_string option;
    (*

    The identifier of the associated resource.

    *)
}

Describes the association between an application and an image resource.

type nonrec image_resource_association_list = image_resource_association list
type nonrec describe_image_associations_result = {
  1. associations : image_resource_association_list option;
    (*

    List of information about the specified associations.

    *)
}
type nonrec image_associated_resource_type_list = image_associated_resource_type list
type nonrec describe_image_associations_request = {
  1. associated_resource_types : image_associated_resource_type_list;
    (*

    The resource types of the associated resource.

    *)
  2. image_id : workspace_image_id;
    (*

    The identifier of the image.

    *)
}
type nonrec workflow_state_message = string
type nonrec percentage = int
type nonrec error_code = string
type nonrec image_error_message = string
type nonrec custom_workspace_image_import_error_details = {
  1. error_message : image_error_message option;
    (*

    The text of the error message that is returned for the image import.

    *)
  2. error_code : error_code option;
    (*

    The error code that is returned for the image import.

    *)
}

Describes in-depth details about the error. These details include the possible causes of the error and troubleshooting information.

type nonrec custom_workspace_image_import_error_details_list = custom_workspace_image_import_error_details list
type nonrec describe_custom_workspace_image_import_result = {
  1. error_details : custom_workspace_image_import_error_details_list option;
    (*

    Describes in-depth details about the error. These details include the possible causes of the error and troubleshooting information.

    *)
  2. image_builder_instance_id : non_empty_string option;
    (*

    The image builder instance ID of the WorkSpace image.

    *)
  3. image_source : image_source_identifier option;
    (*

    Describes the image import source.

    *)
  4. last_updated_time : timestamp option;
    (*

    The timestamp when the WorkSpace image import was last updated.

    *)
  5. created : timestamp option;
    (*

    The timestamp when the WorkSpace image import was created.

    *)
  6. progress_percentage : percentage option;
    (*

    The estimated progress percentage of the WorkSpace image import workflow.

    *)
  7. state_message : workflow_state_message option;
    (*

    The state message of the WorkSpace image import workflow.

    *)
  8. state : custom_workspace_image_import_state option;
    (*

    The state of the WorkSpace image.

    *)
  9. infrastructure_configuration_arn : infrastructure_configuration_arn option;
    (*

    The infrastructure configuration ARN that specifies how the WorkSpace image is built.

    *)
  10. image_id : workspace_image_id option;
    (*

    The identifier of the WorkSpace image.

    *)
}
type nonrec describe_custom_workspace_image_import_request = {
  1. image_id : workspace_image_id;
    (*

    The identifier of the WorkSpace image.

    *)
}
type nonrec connection_alias_permissions = connection_alias_permission list
type nonrec describe_connection_alias_permissions_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. connection_alias_permissions : connection_alias_permissions option;
    (*

    The permissions associated with a connection alias.

    *)
  3. alias_id : connection_alias_id option;
    (*

    The identifier of the connection alias.

    *)
}
type nonrec describe_connection_alias_permissions_request = {
  1. max_results : limit option;
    (*

    The maximum number of results to return.

    *)
  2. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  3. alias_id : connection_alias_id;
    (*

    The identifier of the connection alias.

    *)
}
type nonrec connection_string = string
type nonrec connection_alias_state =
  1. | DELETING
  2. | CREATED
  3. | CREATING
type nonrec association_status =
  1. | PENDING_DISASSOCIATION
  2. | PENDING_ASSOCIATION
  3. | ASSOCIATED_WITH_SHARED_ACCOUNT
  4. | ASSOCIATED_WITH_OWNER_ACCOUNT
  5. | NOT_ASSOCIATED
type nonrec connection_identifier = string
type nonrec connection_alias_association = {
  1. connection_identifier : connection_identifier option;
    (*

    The identifier of the connection alias association. You use the connection identifier in the DNS TXT record when you're configuring your DNS routing policies.

    *)
  2. resource_id : non_empty_string option;
    (*

    The identifier of the directory associated with a connection alias.

    *)
  3. associated_account_id : aws_account option;
    (*

    The identifier of the Amazon Web Services account that associated the connection alias with a directory.

    *)
  4. association_status : association_status option;
    (*

    The association status of the connection alias.

    *)
}

Describes a connection alias association that is used for cross-Region redirection. For more information, see Cross-Region Redirection for Amazon WorkSpaces.

type nonrec connection_alias_association_list = connection_alias_association list
type nonrec connection_alias = {
  1. associations : connection_alias_association_list option;
    (*

    The association status of the connection alias.

    *)
  2. owner_account_id : aws_account option;
    (*

    The identifier of the Amazon Web Services account that owns the connection alias.

    *)
  3. state : connection_alias_state option;
    (*

    The current state of the connection alias.

    *)
  4. alias_id : connection_alias_id option;
    (*

    The identifier of the connection alias.

    *)
  5. connection_string : connection_string option;
    (*

    The connection string specified for the connection alias. The connection string must be in the form of a fully qualified domain name (FQDN), such as www.example.com.

    *)
}

Describes a connection alias. Connection aliases are used for cross-Region redirection. For more information, see Cross-Region Redirection for Amazon WorkSpaces.

type nonrec connection_alias_list = connection_alias list
type nonrec describe_connection_aliases_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. connection_aliases : connection_alias_list option;
    (*

    Information about the specified connection aliases.

    *)
}
type nonrec connection_alias_id_list = connection_alias_id list
type nonrec describe_connection_aliases_request = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. limit : limit option;
    (*

    The maximum number of connection aliases to return.

    *)
  3. resource_id : non_empty_string option;
    (*

    The identifier of the directory associated with the connection alias.

    *)
  4. alias_ids : connection_alias_id_list option;
    (*

    The identifiers of the connection aliases to describe.

    *)
}
type nonrec connect_client_add_in = {
  1. ur_l : add_in_url option;
    (*

    The endpoint URL of the client add-in.

    *)
  2. name : add_in_name option;
    (*

    The name of the client add in.

    *)
  3. resource_id : directory_id option;
    (*

    The directory identifier for which the client add-in is configured.

    *)
  4. add_in_id : amazon_uuid option;
    (*

    The client add-in identifier.

    *)
}

Describes an Connect Customer client add-in.

type nonrec connect_client_add_in_list = connect_client_add_in list
type nonrec describe_connect_client_add_ins_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. add_ins : connect_client_add_in_list option;
    (*

    Information about client add-ins.

    *)
}
type nonrec describe_connect_client_add_ins_request = {
  1. max_results : limit option;
    (*

    The maximum number of items to return.

    *)
  2. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  3. resource_id : directory_id;
    (*

    The directory identifier for which the client add-in is configured.

    *)
}
type nonrec client_properties_result = {
  1. client_properties : client_properties option;
    (*

    Information about the Amazon WorkSpaces client.

    *)
  2. resource_id : non_empty_string option;
    (*

    The resource identifier, in the form of a directory ID.

    *)
}

Information about the Amazon WorkSpaces client.

type nonrec client_properties_list = client_properties_result list
type nonrec describe_client_properties_result = {
  1. client_properties_list : client_properties_list option;
    (*

    Information about the specified Amazon WorkSpaces clients.

    *)
}
type nonrec resource_id_list = non_empty_string list
type nonrec describe_client_properties_request = {
  1. resource_ids : resource_id_list;
    (*

    The resource identifier, in the form of directory IDs.

    *)
}
type nonrec describe_client_branding_result = {
  1. device_type_web : default_client_branding_attributes option;
    (*

    The branding information for Web access.

    *)
  2. device_type_linux : default_client_branding_attributes option;
    (*

    The branding information for Linux devices.

    *)
  3. device_type_ios : ios_client_branding_attributes option;
    (*

    The branding information for iOS devices.

    *)
  4. device_type_android : default_client_branding_attributes option;
    (*

    The branding information for Android devices.

    *)
  5. device_type_osx : default_client_branding_attributes option;
    (*

    The branding information for macOS devices.

    *)
  6. device_type_windows : default_client_branding_attributes option;
    (*

    The branding information for Windows devices.

    *)
}
type nonrec describe_client_branding_request = {
  1. resource_id : directory_id;
    (*

    The directory identifier of the WorkSpace for which you want to view client branding information.

    *)
}
type nonrec bundle_associated_resource_type =
  1. | APPLICATION
type nonrec bundle_resource_association = {
  1. state_reason : association_state_reason option;
    (*

    The reason the association deployment failed.

    *)
  2. state : association_state option;
    (*

    The status of the bundle resource association.

    *)
  3. last_updated_time : timestamp option;
    (*

    The time the association status was last updated.

    *)
  4. created : timestamp option;
    (*

    The time the association is created.

    *)
  5. bundle_id : bundle_id option;
    (*

    The identifier of the bundle.

    *)
  6. associated_resource_type : bundle_associated_resource_type option;
    (*

    The resource type of the associated resources.

    *)
  7. associated_resource_id : non_empty_string option;
    (*

    The identifier of the associated resource.

    *)
}

Describes the association between an application and a bundle resource.

type nonrec bundle_resource_association_list = bundle_resource_association list
type nonrec describe_bundle_associations_result = {
  1. associations : bundle_resource_association_list option;
    (*

    List of information about the specified associations.

    *)
}
type nonrec bundle_associated_resource_type_list = bundle_associated_resource_type list
type nonrec describe_bundle_associations_request = {
  1. associated_resource_types : bundle_associated_resource_type_list;
    (*

    The resource types of the associated resource.

    *)
  2. bundle_id : bundle_id;
    (*

    The identifier of the bundle.

    *)
}
type nonrec work_space_application_license_type =
  1. | UNLICENSED
  2. | LICENSED
type nonrec work_space_application_owner = string
type nonrec work_space_application_state =
  1. | UNINSTALL_ONLY
  2. | AVAILABLE
  3. | ERROR
  4. | PENDING
type nonrec compute_list = compute list
type nonrec operating_system_name_list = operating_system_name list
type nonrec work_space_application = {
  1. supported_operating_system_names : operating_system_name_list option;
    (*

    The supported operating systems of the WorkSpace application.

    *)
  2. supported_compute_type_names : compute_list option;
    (*

    The supported compute types of the WorkSpace application.

    *)
  3. state : work_space_application_state option;
    (*

    The status of WorkSpace application.

    *)
  4. owner : work_space_application_owner option;
    (*

    The owner of the WorkSpace application.

    *)
  5. name : non_empty_string option;
    (*

    The name of the WorkSpace application.

    *)
  6. license_type : work_space_application_license_type option;
    (*

    The license availability for the applications.

    *)
  7. description : string2048 option;
    (*

    The description of the WorkSpace application.

    *)
  8. created : timestamp option;
    (*

    The time the application is created.

    *)
  9. application_id : work_space_application_id option;
    (*

    The identifier of the application.

    *)
}

Describes the WorkSpace application.

type nonrec work_space_application_list = work_space_application list
type nonrec describe_applications_result = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. applications : work_space_application_list option;
    (*

    List of information about the specified applications.

    *)
}
type nonrec work_space_application_id_list = work_space_application_id list
type nonrec describe_applications_request = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. max_results : limit option;
    (*

    The maximum number of applications to return.

    *)
  3. owner : work_space_application_owner option;
    (*

    The owner of the applications.

    *)
  4. operating_system_names : operating_system_name_list option;
    (*

    The operating systems supported by the applications.

    *)
  5. license_type : work_space_application_license_type option;
    (*

    The license availability for the applications.

    *)
  6. compute_type_names : compute_list option;
    (*

    The compute types supported by the applications.

    *)
  7. application_ids : work_space_application_id_list option;
    (*

    The identifiers of one or more applications.

    *)
}
type nonrec application_associated_resource_type =
  1. | IMAGE
  2. | BUNDLE
  3. | WORKSPACE
type nonrec application_resource_association = {
  1. state_reason : association_state_reason option;
    (*

    The reason the association deployment failed.

    *)
  2. state : association_state option;
    (*

    The status of the application resource association.

    *)
  3. last_updated_time : timestamp option;
    (*

    The time the association status was last updated.

    *)
  4. created : timestamp option;
    (*

    The time the association was created.

    *)
  5. associated_resource_type : application_associated_resource_type option;
    (*

    The resource type of the associated resource.

    *)
  6. associated_resource_id : non_empty_string option;
    (*

    The identifier of the associated resource.

    *)
  7. application_id : work_space_application_id option;
    (*

    The identifier of the application.

    *)
}

Describes the association between an application and an application resource.

type nonrec application_resource_association_list = application_resource_association list
type nonrec describe_application_associations_result = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  2. associations : application_resource_association_list option;
    (*

    List of associations and information about them.

    *)
}
type nonrec application_associated_resource_type_list = application_associated_resource_type list
type nonrec describe_application_associations_request = {
  1. associated_resource_types : application_associated_resource_type_list;
    (*

    The resource type of the associated resources.

    *)
  2. application_id : work_space_application_id;
    (*

    The identifier of the specified application.

    *)
  3. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
  4. max_results : limit option;
    (*

    The maximum number of associations to return.

    *)
}
type nonrec dedicated_tenancy_modification_state_enum =
  1. | FAILED
  2. | COMPLETED
  3. | PENDING
type nonrec dedicated_tenancy_support_result_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec account_modification = {
  1. error_message : description option;
    (*

    The text of the error message that is returned if the configuration of BYOL cannot be modified.

    *)
  2. error_code : workspace_error_code option;
    (*

    The error code that is returned if the configuration of BYOL cannot be modified.

    *)
  3. start_time : timestamp option;
    (*

    The timestamp when the modification of the BYOL configuration was started.

    *)
  4. dedicated_tenancy_management_cidr_range : dedicated_tenancy_management_cidr_range option;
    (*

    The IP address range, specified as an IPv4 CIDR block, for the management network interface used for the account.

    *)
  5. dedicated_tenancy_support : dedicated_tenancy_support_result_enum option;
    (*

    The status of BYOL (whether BYOL is being enabled or disabled).

    *)
  6. modification_state : dedicated_tenancy_modification_state_enum option;
    (*

    The state of the modification to the configuration of BYOL.

    *)
}

Describes a modification to the configuration of Bring Your Own License (BYOL) for the specified account.

type nonrec account_modification_list = account_modification list
type nonrec describe_account_modifications_result = {
  1. next_token : pagination_token option;
    (*

    The token to use to retrieve the next page of results. This value is null when there are no more results to return.

    *)
  2. account_modifications : account_modification_list option;
    (*

    The list of modifications to the configuration of BYOL.

    *)
}
type nonrec describe_account_modifications_request = {
  1. next_token : pagination_token option;
    (*

    If you received a NextToken from a previous call that was paginated, provide this token to receive the next set of results.

    *)
}
type nonrec dedicated_tenancy_account_type =
  1. | TARGET_ACCOUNT
  2. | SOURCE_ACCOUNT
type nonrec describe_account_result = {
  1. message : message option;
    (*

    The text message to describe the status of BYOL.

    *)
  2. dedicated_tenancy_account_type : dedicated_tenancy_account_type option;
    (*

    The type of linked account.

    *)
  3. dedicated_tenancy_management_cidr_range : dedicated_tenancy_management_cidr_range option;
    (*

    The IP address range, specified as an IPv4 CIDR block, used for the management network interface.

    The management network interface is connected to a secure Amazon WorkSpaces management network. It is used for interactive streaming of the WorkSpace desktop to Amazon WorkSpaces clients, and to allow Amazon WorkSpaces to manage the WorkSpace.

    *)
  4. dedicated_tenancy_support : dedicated_tenancy_support_result_enum option;
    (*

    The status of BYOL (whether BYOL is enabled or disabled).

    *)
}
type nonrec describe_account_request = unit
type nonrec deregister_workspace_directory_result = unit
type nonrec deregister_workspace_directory_request = {
  1. directory_id : directory_id;
    (*

    The identifier of the directory. If any WorkSpaces are registered to this directory, you must remove them before you deregister the directory, or you will receive an OperationNotSupportedException error.

    *)
}
type nonrec incompatible_applications_exception = unit
type nonrec work_space_application_deployment = {
  1. associations : workspace_resource_association_list option;
    (*

    The associations between the applications and the associated resources.

    *)
}

Describes the WorkSpace application deployment.

type nonrec deploy_workspace_applications_result = {
  1. deployment : work_space_application_deployment option;
    (*

    The list of deployed associations and information about them.

    *)
}
type nonrec deploy_workspace_applications_request = {
  1. force : boolean_object option;
    (*

    Indicates whether the force flag is applied for the specified WorkSpace. When the force flag is enabled, it allows previously failed deployments to be retried.

    *)
  2. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}
type nonrec delete_workspace_image_result = unit
type nonrec delete_workspace_image_request = {
  1. image_id : workspace_image_id;
    (*

    The identifier of the image.

    *)
}
type nonrec delete_workspace_bundle_result = unit
type nonrec delete_workspace_bundle_request = {
  1. bundle_id : bundle_id option;
    (*

    The identifier of the bundle.

    *)
}
type nonrec delete_tags_result = unit
type nonrec tag_key_list = non_empty_string list
type nonrec delete_tags_request = {
  1. tag_keys : tag_key_list;
    (*

    The tag keys.

    *)
  2. resource_id : non_empty_string;
    (*

    The identifier of the WorkSpaces resource. The supported resource types are WorkSpaces, registered directories, images, custom bundles, IP access control groups, and connection aliases.

    *)
}
type nonrec delete_ip_group_result = unit
type nonrec delete_ip_group_request = {
  1. group_id : ip_group_id;
    (*

    The identifier of the IP access control group.

    *)
}
type nonrec delete_connection_alias_result = unit
type nonrec delete_connection_alias_request = {
  1. alias_id : connection_alias_id;
    (*

    The identifier of the connection alias to delete.

    *)
}
type nonrec delete_connect_client_add_in_result = unit
type nonrec delete_connect_client_add_in_request = {
  1. resource_id : directory_id;
    (*

    The directory identifier for which the client add-in is configured.

    *)
  2. add_in_id : amazon_uuid;
    (*

    The identifier of the client add-in to delete.

    *)
}
type nonrec delete_client_branding_result = unit
type nonrec client_device_type =
  1. | DEVICE_TYPE_WEB
  2. | DEVICE_TYPE_LINUX
  3. | DEVICE_TYPE_IOS
  4. | DEVICE_TYPE_ANDROID
  5. | DEVICE_TYPE_OSX
  6. | DEVICE_TYPE_WINDOWS
type nonrec client_device_type_list = client_device_type list
type nonrec delete_client_branding_request = {
  1. platforms : client_device_type_list;
    (*

    The device type for which you want to delete client branding.

    *)
  2. resource_id : directory_id;
    (*

    The directory identifier of the WorkSpace for which you want to delete client branding.

    *)
}
type nonrec create_workspaces_pool_result = {
  1. workspaces_pool : workspaces_pool option;
    (*

    Indicates the pool to create.

    *)
}
type nonrec create_workspaces_pool_request = {
  1. running_mode : pools_running_mode option;
    (*

    The running mode for the pool.

    *)
  2. timeout_settings : timeout_settings option;
    (*

    Indicates the timeout settings of the pool.

    *)
  3. application_settings : application_settings_request option;
    (*

    Indicates the application settings of the pool.

    *)
  4. tags : tag_list option;
    (*

    The tags for the pool.

    *)
  5. capacity : capacity;
    (*

    The user capacity of the pool.

    *)
  6. directory_id : directory_id;
    (*

    The identifier of the directory for the pool.

    *)
  7. bundle_id : bundle_id;
    (*

    The identifier of the bundle for the pool.

    *)
  8. description : update_description;
    (*

    The pool description.

    *)
  9. pool_name : workspaces_pool_name;
    (*

    The name of the pool.

    *)
}
type nonrec workspace_request = {
  1. ipv6_address : ipv6_address option;
    (*

    The IPv6 address for the WorkSpace.

    *)
  2. workspace_name : workspace_name option;
    (*

    The name of the user-decoupled WorkSpace.

    WorkspaceName is required if UserName is [UNDEFINED] for user-decoupled WorkSpaces. WorkspaceName is not applicable if UserName is specified for user-assigned WorkSpaces.

    *)
  3. tags : tag_list option;
    (*

    The tags for the WorkSpace.

    *)
  4. workspace_properties : workspace_properties option;
    (*

    The WorkSpace properties.

    *)
  5. root_volume_encryption_enabled : boolean_object option;
    (*

    Indicates whether the data stored on the root volume is encrypted.

    *)
  6. user_volume_encryption_enabled : boolean_object option;
    (*

    Indicates whether the data stored on the user volume is encrypted.

    *)
  7. volume_encryption_key : volume_encryption_key option;
    (*

    The ARN of the symmetric KMS key used to encrypt data stored on your WorkSpace. Amazon WorkSpaces does not support asymmetric KMS keys.

    *)
  8. bundle_id : bundle_id;
    (*

    The identifier of the bundle for the WorkSpace. You can use DescribeWorkspaceBundles to list the available bundles.

    *)
  9. user_name : user_name;
    (*

    The user name of the user for the WorkSpace. This user name must exist in the Directory Service directory for the WorkSpace.

    The username is not case-sensitive, but we recommend matching the case in the Directory Service directory to avoid potential incompatibilities.

    The reserved keyword, [UNDEFINED], is used when creating user-decoupled WorkSpaces.

    *)
  10. directory_id : directory_id;
    (*

    The identifier of the Directory Service directory for the WorkSpace. You can use DescribeWorkspaceDirectories to list the available directories.

    *)
}

Describes the information used to create a WorkSpace.

type nonrec failed_create_workspace_request = {
  1. error_message : description option;
    (*

    The text of the error message that is returned if the WorkSpace cannot be created.

    *)
  2. error_code : error_type option;
    (*

    The error code that is returned if the WorkSpace cannot be created.

    *)
  3. workspace_request : workspace_request option;
    (*

    Information about the WorkSpace.

    *)
}

Describes a WorkSpace that cannot be created.

type nonrec failed_create_workspace_requests = failed_create_workspace_request list
type nonrec create_workspaces_result = {
  1. pending_requests : workspace_list option;
    (*

    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.

    *)
  2. failed_requests : failed_create_workspace_requests option;
    (*

    Information about the WorkSpaces that could not be created.

    *)
}
type nonrec workspace_request_list = workspace_request list
type nonrec create_workspaces_request = {
  1. workspaces : workspace_request_list;
    (*

    The WorkSpaces to create. You can specify up to 25 WorkSpaces.

    *)
}
type nonrec create_workspace_image_result = {
  1. owner_account_id : aws_account option;
    (*

    The identifier of the Amazon Web Services account that owns the image.

    *)
  2. created : timestamp option;
    (*

    The date when the image was created.

    *)
  3. required_tenancy : workspace_image_required_tenancy option;
    (*

    Specifies whether the image is running on dedicated hardware. When Bring Your Own License (BYOL) is enabled, this value is set to DEDICATED. For more information, see Bring Your Own Windows Desktop Images..

    *)
  4. state : workspace_image_state option;
    (*

    The availability status of the image.

    *)
  5. operating_system : operating_system option;
    (*

    The operating system that the image is running.

    *)
  6. description : workspace_image_description option;
    (*

    The description of the image.

    *)
  7. name : workspace_image_name option;
    (*

    The name of the image.

    *)
  8. image_id : workspace_image_id option;
    (*

    The identifier of the new WorkSpace image.

    *)
}
type nonrec create_workspace_image_request = {
  1. tags : tag_list option;
    (*

    The tags that you want to add to the new WorkSpace image. To add tags when you're creating the image, you must create an IAM policy that grants your IAM user permission to use workspaces:CreateTags.

    *)
  2. workspace_id : workspace_id;
    (*

    The identifier of the source WorkSpace

    *)
  3. description : workspace_image_description;
    (*

    The description of the new WorkSpace image.

    *)
  4. name : workspace_image_name;
    (*

    The name of the new WorkSpace image.

    *)
}
type nonrec create_workspace_bundle_result = {
  1. workspace_bundle : workspace_bundle option;
}
type nonrec workspace_bundle_name = string
type nonrec workspace_bundle_description = string
type nonrec create_workspace_bundle_request = {
  1. tags : tag_list option;
    (*

    The tags associated with the bundle.

    To add tags at the same time when you're creating the bundle, you must create an IAM policy that grants your IAM user permissions to use workspaces:CreateTags.

    *)
  2. root_storage : root_storage option;
  3. user_storage : user_storage;
  4. compute_type : compute_type;
  5. image_id : workspace_image_id;
    (*

    The identifier of the image that is used to create the bundle.

    *)
  6. bundle_description : workspace_bundle_description;
    (*

    The description of the bundle.

    *)
  7. bundle_name : workspace_bundle_name;
    (*

    The name of the bundle.

    *)
}
type nonrec create_updated_workspace_image_result = {
  1. image_id : workspace_image_id option;
    (*

    The identifier of the new updated WorkSpace image.

    *)
}
type nonrec create_updated_workspace_image_request = {
  1. tags : tag_list option;
    (*

    The tags that you want to add to the new updated WorkSpace image.

    To add tags at the same time when you're creating the updated image, you must create an IAM policy that grants your IAM user permissions to use workspaces:CreateTags.

    *)
  2. source_image_id : workspace_image_id;
    (*

    The identifier of the source WorkSpace image.

    *)
  3. description : workspace_image_description;
    (*

    A description of whether updates for the WorkSpace image are available.

    *)
  4. name : workspace_image_name;
    (*

    The name of the new updated WorkSpace image.

    *)
}
type nonrec create_tags_result = unit
type nonrec create_tags_request = {
  1. tags : tag_list;
    (*

    The tags. Each WorkSpaces resource can have a maximum of 50 tags.

    *)
  2. resource_id : non_empty_string;
    (*

    The identifier of the WorkSpaces resource. The supported resource types are WorkSpaces, registered directories, images, custom bundles, IP access control groups, and connection aliases.

    *)
}
type nonrec standby_workspace = {
  1. data_replication : data_replication option;
    (*

    Indicates whether data replication is enabled, and if enabled, the type of data replication.

    *)
  2. tags : tag_list option;
    (*

    The tags associated with the standby WorkSpace.

    *)
  3. directory_id : directory_id;
    (*

    The identifier of the directory for the standby WorkSpace.

    *)
  4. volume_encryption_key : volume_encryption_key option;
    (*

    The volume encryption key of the standby WorkSpace.

    *)
  5. primary_workspace_id : workspace_id;
    (*

    The identifier of the standby WorkSpace.

    *)
}

Describes a standby WorkSpace.

type nonrec failed_create_standby_workspaces_request = {
  1. error_message : description option;
    (*

    The text of the error message that is returned if the standby WorkSpace could not be created.

    *)
  2. error_code : workspace_error_code option;
    (*

    The error code that is returned if the standby WorkSpace could not be created.

    *)
  3. standby_workspace_request : standby_workspace option;
    (*

    Information about the standby WorkSpace that could not be created.

    *)
}

Describes the standby WorkSpace that could not be created.

type nonrec failed_create_standby_workspaces_request_list = failed_create_standby_workspaces_request list
type nonrec pending_create_standby_workspaces_request = {
  1. workspace_id : workspace_id option;
    (*

    The identifier of the standby WorkSpace.

    *)
  2. state : workspace_state option;
    (*

    The operational state of the standby WorkSpace.

    *)
  3. directory_id : directory_id option;
    (*

    The identifier of the directory for the standby WorkSpace.

    *)
  4. user_name : user_name option;
    (*

    Describes the standby WorkSpace that was 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.

    *)
}

Information about the standby WorkSpace.

type nonrec pending_create_standby_workspaces_request_list = pending_create_standby_workspaces_request list
type nonrec create_standby_workspaces_result = {
  1. pending_standby_requests : pending_create_standby_workspaces_request_list option;
    (*

    Information about the standby WorkSpace that was created.

    *)
  2. failed_standby_requests : failed_create_standby_workspaces_request_list option;
    (*

    Information about the standby WorkSpace that could not be created.

    *)
}
type nonrec standby_workspaces_list = standby_workspace list
type nonrec create_standby_workspaces_request = {
  1. standby_workspaces : standby_workspaces_list;
    (*

    Information about the standby WorkSpace to be created.

    *)
  2. primary_region : region;
    (*

    The Region of the primary WorkSpace.

    *)
}
type nonrec resource_creation_failed_exception = {
  1. message : exception_message option;
}

The resource could not be created.

type nonrec create_ip_group_result = {
  1. group_id : ip_group_id option;
    (*

    The identifier of the group.

    *)
}
type nonrec create_ip_group_request = {
  1. tags : tag_list option;
    (*

    The tags. Each WorkSpaces resource can have a maximum of 50 tags.

    *)
  2. user_rules : ip_rule_list option;
    (*

    The rules to add to the group.

    *)
  3. group_desc : ip_group_desc option;
    (*

    The description of the group.

    *)
  4. group_name : ip_group_name;
    (*

    The name of the group.

    *)
}
type nonrec create_connection_alias_result = {
  1. alias_id : connection_alias_id option;
    (*

    The identifier of the connection alias.

    *)
}
type nonrec create_connection_alias_request = {
  1. tags : tag_list option;
    (*

    The tags to associate with the connection alias.

    *)
  2. connection_string : connection_string;
    (*

    A connection string in the form of a fully qualified domain name (FQDN), such as www.example.com.

    After you create a connection string, it is always associated to your Amazon Web Services account. You cannot recreate the same connection string with a different account, even if you delete all instances of it from the original account. The connection string is globally reserved for your account.

    *)
}
type nonrec create_connect_client_add_in_result = {
  1. add_in_id : amazon_uuid option;
    (*

    The client add-in identifier.

    *)
}
type nonrec create_connect_client_add_in_request = {
  1. ur_l : add_in_url;
    (*

    The endpoint URL of the Connect Customer client add-in.

    *)
  2. name : add_in_name;
    (*

    The name of the client add-in.

    *)
  3. resource_id : directory_id;
    (*

    The directory identifier for which to configure the client add-in.

    *)
}
type nonrec copy_workspace_image_result = {
  1. image_id : workspace_image_id option;
    (*

    The identifier of the image.

    *)
}
type nonrec copy_workspace_image_request = {
  1. tags : tag_list option;
    (*

    The tags for the image.

    *)
  2. source_region : region;
    (*

    The identifier of the source Region.

    *)
  3. source_image_id : workspace_image_id;
    (*

    The identifier of the source image.

    *)
  4. description : workspace_image_description option;
    (*

    A description of the image.

    *)
  5. name : workspace_image_name;
    (*

    The name of the image.

    *)
}
type nonrec authorize_ip_rules_result = unit
type nonrec authorize_ip_rules_request = {
  1. user_rules : ip_rule_list;
    (*

    The rules to add to the group.

    *)
  2. group_id : ip_group_id;
    (*

    The identifier of the group.

    *)
}
type nonrec operating_system_not_compatible_exception = unit
type nonrec compute_not_compatible_exception = unit
type nonrec application_not_supported_exception = unit
type nonrec associate_workspace_application_result = {
  1. association : workspace_resource_association option;
    (*

    Information about the association between the specified WorkSpace and the specified application.

    *)
}
type nonrec associate_workspace_application_request = {
  1. application_id : work_space_application_id;
    (*

    The identifier of the application.

    *)
  2. workspace_id : workspace_id;
    (*

    The identifier of the WorkSpace.

    *)
}
type nonrec associate_ip_groups_result = unit
type nonrec associate_ip_groups_request = {
  1. group_ids : ip_group_id_list;
    (*

    The identifiers of one or more IP access control groups.

    *)
  2. directory_id : directory_id;
    (*

    The identifier of the directory.

    *)
}
type nonrec associate_connection_alias_result = {
  1. connection_identifier : connection_identifier option;
    (*

    The identifier of the connection alias association. You use the connection identifier in the DNS TXT record when you're configuring your DNS routing policies.

    *)
}
type nonrec associate_connection_alias_request = {
  1. resource_id : non_empty_string;
    (*

    The identifier of the directory to associate the connection alias with.

    *)
  2. alias_id : connection_alias_id;
    (*

    The identifier of the connection alias.

    *)
}