Module Smaws_Client_WorkspacesInstances.Types

type nonrec provision_state_enum =
  1. | ERROR_DEALLOCATING
  2. | ERROR_ALLOCATING
  3. | DEALLOCATED
  4. | DEALLOCATING
  5. | ALLOCATED
  6. | ALLOCATING
type nonrec workspace_instance_id = string
type nonrec ec2_managed_instance = {
  1. instance_id : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    Unique identifier of the managed EC2 instance.

    *)
}

Represents an EC2 instance managed by WorkSpaces.

type nonrec workspace_instance = {
  1. ec2_managed_instance : ec2_managed_instance option;
    (*

    Details of the associated EC2 managed instance.

    *)
  2. workspace_instance_id : workspace_instance_id option;
    (*

    Unique identifier for the WorkSpace Instance.

    *)
  3. provision_state : provision_state_enum option;
    (*

    Current provisioning state of the WorkSpace Instance.

    *)
}

Represents a single WorkSpace Instance.

type nonrec workspace_instances = workspace_instance list
type nonrec workspace_instance_error = {
  1. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    Detailed description of the WorkSpace Instance error.

    *)
  2. error_code : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    Unique error code for the WorkSpace Instance error.

    *)
}

Captures errors specific to WorkSpace Instance operations.

type nonrec workspace_instance_errors = workspace_instance_error list
type nonrec volume_type_enum =
  1. | GP3
  2. | ST1
  3. | SC1
  4. | GP2
  5. | IO2
  6. | IO1
  7. | STANDARD
type nonrec volume_id = string
type nonrec virtual_name = string
type nonrec validation_exception_reason =
  1. | OTHER
  2. | DEPENDENCY_FAILURE
  3. | FIELD_VALIDATION_FAILED
  4. | CANNOT_PARSE
  5. | UNSUPPORTED_OPERATION
  6. | UNKNOWN_OPERATION
type nonrec validation_exception_field = {
  1. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Detailed error message describing the validation issue.

    *)
  2. reason : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Reason for the validation failure.

    *)
  3. name : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Name of the field that failed validation.

    *)
}

Represents a validation error field in an API request.

type nonrec validation_exception_field_list = validation_exception_field list
type nonrec validation_exception = {
  1. field_list : validation_exception_field_list option;
    (*

    List of fields that failed validation.

    *)
  2. reason : validation_exception_reason;
    (*

    Specific reason for the validation failure.

    *)
  3. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Overall description of validation failures.

    *)
}

Indicates invalid input parameters in the request.

type nonrec user_data = string
type nonrec untag_resource_response = unit
type nonrec tag_key = string
type nonrec tag_key_list = tag_key list
type nonrec untag_resource_request = {
  1. tag_keys : tag_key_list;
    (*

    Keys of tags to be removed.

    *)
  2. workspace_instance_id : workspace_instance_id;
    (*

    Unique identifier of the WorkSpace Instance to untag.

    *)
}

Specifies tags to remove from a WorkSpace Instance.

type nonrec throttling_exception = {
  1. retry_after_seconds : Smaws_Lib.Smithy_api.Types.integer option;
    (*

    Recommended wait time before retrying the request.

    *)
  2. quota_code : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    Specific code for the throttling quota.

    *)
  3. service_code : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    Code identifying the service experiencing throttling.

    *)
  4. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Description of the throttling event.

    *)
}

Indicates the request rate has exceeded limits.

type nonrec resource_not_found_exception = {
  1. resource_type : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Type of the resource that was not found.

    *)
  2. resource_id : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Identifier of the resource that was not found.

    *)
  3. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Details about the missing resource.

    *)
}

Indicates the requested resource could not be found.

type nonrec internal_server_exception = {
  1. retry_after_seconds : Smaws_Lib.Smithy_api.Types.integer option;
    (*

    Recommended wait time before retrying the request.

    *)
  2. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Description of the internal server error.

    *)
}

Indicates an unexpected server-side error occurred.

type nonrec access_denied_exception = {
  1. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Detailed explanation of the access denial.

    *)
}

Indicates insufficient permissions to perform the requested action.

type nonrec tenancy_enum =
  1. | HOST
  2. | DEDICATED
  3. | DEFAULT
type nonrec tag_value = string
type nonrec resource_type_enum =
  1. | NETWORK_INTERFACE
  2. | SPOT_INSTANCES_REQUEST
  3. | VOLUME
  4. | INSTANCE
type nonrec tag = {
  1. value : tag_value option;
    (*

    Value associated with the tag key.

    *)
  2. key : tag_key option;
    (*

    Unique identifier for the tag.

    *)
}

Represents a key-value metadata tag.

type nonrec tag_list = tag list
type nonrec tag_specification = {
  1. tags : tag_list option;
    (*

    Collection of tags for the specified resource.

    *)
  2. resource_type : resource_type_enum option;
    (*

    Type of resource being tagged.

    *)
}

Defines tagging configuration for a resource.

type nonrec tag_specifications = tag_specification list
type nonrec tag_resource_response = unit
type nonrec tag_resource_request = {
  1. tags : tag_list;
    (*

    Tags to be added to the WorkSpace Instance.

    *)
  2. workspace_instance_id : workspace_instance_id;
    (*

    Unique identifier of the WorkSpace Instance to tag.

    *)
}

Specifies tags to add to a WorkSpace Instance.

type nonrec billing_mode =
  1. | HOURLY
  2. | MONTHLY
type nonrec platform_type_enum =
  1. | SUSE
  2. | LINUX_BYOL
  3. | RHEL
  4. | UBUNTU_PRO
  5. | LINUX_UNIX
  6. | WINDOWS_BYOL
  7. | WINDOWS
type nonrec instance_configuration_tenancy_enum =
  1. | DEDICATED
  2. | SHARED
type nonrec supported_instance_configuration = {
  1. tenancy : instance_configuration_tenancy_enum option;
    (*

    Specifies the tenancy model supported in this configuration combination.

    *)
  2. platform_type : platform_type_enum option;
    (*

    Specifies the operating system platform supported in this configuration combination.

    *)
  3. billing_mode : billing_mode option;
    (*

    Specifies the billing mode supported in this configuration combination.

    *)
}

Represents a single valid configuration combination that an instance type supports, combining tenancy, platform type, and billing mode into one complete configuration specification.

type nonrec supported_instance_configurations = supported_instance_configuration list
type nonrec subnet_id = string
type nonrec string64 = string
type nonrec string128 = string
type nonrec non_negative_integer = int
type nonrec instance_interruption_behavior_enum =
  1. | STOP
  2. | HIBERNATE
type nonrec spot_instance_type_enum =
  1. | PERSISTENT
  2. | ONE_TIME
type nonrec spot_market_options = {
  1. valid_until_utc : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    Timestamp until which spot instance request is valid.

    *)
  2. spot_instance_type : spot_instance_type_enum option;
    (*

    Defines the type of spot instance request.

    *)
  3. max_price : string64 option;
    (*

    Maximum hourly price for spot instance.

    *)
  4. instance_interruption_behavior : instance_interruption_behavior_enum option;
    (*

    Specifies behavior when spot instance is interrupted.

    *)
  5. block_duration_minutes : non_negative_integer option;
    (*

    Duration of spot instance block reservation.

    *)
}

Defines configuration for spot instance deployment.

type nonrec snapshot_id = string
type nonrec service_quota_exceeded_exception = {
  1. quota_code : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Specific code for the exceeded quota.

    *)
  2. service_code : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Code identifying the service with the quota limitation.

    *)
  3. resource_type : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Type of resource related to the quota.

    *)
  4. resource_id : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Identifier of the resource related to the quota.

    *)
  5. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Description of the quota limitation.

    *)
}

Indicates that a service quota has been exceeded.

type nonrec security_group_name = string
type nonrec security_group_names = security_group_name list
type nonrec security_group_id = string
type nonrec security_group_ids = security_group_id list
type nonrec run_instances_monitoring_enabled = {
  1. enabled : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables or disables detailed instance monitoring.

    *)
}

Configures detailed monitoring for WorkSpace Instance.

type nonrec region_name = string
type nonrec region = {
  1. region_name : region_name option;
    (*

    Name of the AWS region.

    *)
}

Represents an AWS region supported by WorkSpaces Instances.

type nonrec region_list = region list
type nonrec provision_states = provision_state_enum list
type nonrec ipv4_address = string
type nonrec private_ip_address_specification = {
  1. private_ip_address : ipv4_address option;
    (*

    Specific private IP address for the network interface.

    *)
  2. primary : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Indicates if this is the primary private IP address.

    *)
}

Defines private IP address configuration for network interface.

type nonrec private_ip_addresses = private_ip_address_specification list
type nonrec hostname_type_enum =
  1. | RESOURCE_NAME
  2. | IP_NAME
type nonrec private_dns_name_options_request = {
  1. enable_resource_name_dns_aaaa_record : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables DNS AAAA record for resource name resolution.

    *)
  2. enable_resource_name_dns_a_record : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables DNS A record for resource name resolution.

    *)
  3. hostname_type : hostname_type_enum option;
    (*

    Specifies the type of hostname configuration.

    *)
}

Configures private DNS name settings for WorkSpace Instance.

type nonrec placement_group_id = string
type nonrec availability_zone = string
type nonrec host_id = string
type nonrec ar_n = string
type nonrec placement = {
  1. tenancy : tenancy_enum option;
    (*

    Defines instance tenancy configuration.

    *)
  2. partition_number : non_negative_integer option;
    (*

    Specifies partition number for partition placement groups.

    *)
  3. host_resource_group_arn : ar_n option;
    (*

    ARN of the host resource group.

    *)
  4. host_id : host_id option;
    (*

    Identifies the specific dedicated host.

    *)
  5. group_name : string64 option;
    (*

    Name of the placement group.

    *)
  6. group_id : placement_group_id option;
    (*

    Unique identifier for placement group.

    *)
  7. availability_zone : availability_zone option;
    (*

    Identifies the specific AWS availability zone.

    *)
  8. affinity : string64 option;
    (*

    Specifies host affinity for dedicated instances.

    *)
}

Defines instance placement configuration for WorkSpace Instance.

type nonrec next_token = string
type nonrec connection_tracking_specification_request = {
  1. udp_timeout : non_negative_integer option;
    (*

    General timeout for UDP connections.

    *)
  2. udp_stream_timeout : non_negative_integer option;
    (*

    Timeout for UDP stream connections.

    *)
  3. tcp_established_timeout : non_negative_integer option;
    (*

    Timeout for established TCP connections.

    *)
}

Defines connection tracking parameters for network interfaces.

type nonrec description = string
type nonrec ena_srd_udp_specification_request = {
  1. ena_srd_udp_enabled : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables or disables ENA SRD for UDP traffic.

    *)
}

Specifies UDP configuration for ENA SRD.

type nonrec ena_srd_specification_request = {
  1. ena_srd_udp_specification : ena_srd_udp_specification_request option;
    (*

    Configures UDP-specific ENA SRD settings.

    *)
  2. ena_srd_enabled : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables or disables ENA SRD for network performance.

    *)
}

Defines Elastic Network Adapter (ENA) Scalable Reliable Datagram (SRD) configuration.

type nonrec interface_type_enum =
  1. | EFA_ONLY
  2. | EFA
  3. | INTERFACE
type nonrec ipv4_prefix = string
type nonrec ipv4_prefix_specification_request = {
  1. ipv4_prefix : ipv4_prefix option;
    (*

    Specific IPv4 prefix for network interface configuration.

    *)
}

Specifies IPv4 prefix configuration for network interfaces.

type nonrec ipv4_prefixes = ipv4_prefix_specification_request list
type nonrec ipv6_address = string
type nonrec instance_ipv6_address = {
  1. is_primary_ipv6 : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Indicates if this is the primary IPv6 address for the instance.

    *)
  2. ipv6_address : ipv6_address option;
    (*

    Specific IPv6 address assigned to the instance.

    *)
}

Represents an IPv6 address configuration for a WorkSpace Instance.

type nonrec ipv6_addresses = instance_ipv6_address list
type nonrec ipv6_prefix = string
type nonrec ipv6_prefix_specification_request = {
  1. ipv6_prefix : ipv6_prefix option;
    (*

    Specific IPv6 prefix for network interface configuration.

    *)
}

Specifies IPv6 prefix configuration for network interfaces.

type nonrec ipv6_prefixes = ipv6_prefix_specification_request list
type nonrec network_interface_id = string
type nonrec instance_network_interface_specification = {
  1. subnet_id : subnet_id option;
    (*

    Subnet identifier for the network interface.

    *)
  2. groups : security_group_ids option;
    (*

    Security groups associated with the network interface.

    *)
  3. secondary_private_ip_address_count : non_negative_integer option;
    (*

    Number of additional private IP addresses to assign.

    *)
  4. private_ip_addresses : private_ip_addresses option;
    (*

    List of private IP addresses for the interface.

    *)
  5. private_ip_address : ipv4_address option;
    (*

    Primary private IP address for the interface.

    *)
  6. primary_ipv6 : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Indicates the primary IPv6 configuration.

    *)
  7. network_interface_id : network_interface_id option;
    (*

    Unique identifier for the network interface.

    *)
  8. network_card_index : non_negative_integer option;
    (*

    Index of the network card for multiple network interfaces.

    *)
  9. ipv6_prefix_count : non_negative_integer option;
    (*

    Number of IPv6 prefixes to assign.

    *)
  10. ipv6_prefixes : ipv6_prefixes option;
    (*

    IPv6 prefix configurations for the interface.

    *)
  11. ipv6_addresses : ipv6_addresses option;
    (*

    Specific IPv6 addresses for the interface.

    *)
  12. ipv6_address_count : non_negative_integer option;
    (*

    Number of IPv6 addresses to assign.

    *)
  13. ipv4_prefix_count : non_negative_integer option;
    (*

    Number of IPv4 prefixes to assign.

    *)
  14. ipv4_prefixes : ipv4_prefixes option;
    (*

    IPv4 prefix configurations for the interface.

    *)
  15. interface_type : interface_type_enum option;
    (*

    Specifies the type of network interface.

    *)
  16. ena_srd_specification : ena_srd_specification_request option;
    (*

    Configures Elastic Network Adapter Scalable Reliable Datagram settings.

    *)
  17. device_index : non_negative_integer option;
    (*

    Unique index for the network interface.

    *)
  18. description : description option;
    (*

    Descriptive text for the network interface.

    *)
  19. connection_tracking_specification : connection_tracking_specification_request option;
    (*

    Configures network connection tracking parameters.

    *)
  20. associate_public_ip_address : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables public IP address assignment.

    *)
  21. associate_carrier_ip_address : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables carrier IP address association.

    *)
}

Defines network interface configuration for WorkSpace Instance.

type nonrec network_interfaces = instance_network_interface_specification list
type nonrec max_results = int
type nonrec market_type_enum =
  1. | CAPACITY_BLOCK
  2. | SPOT
type nonrec device_name = string
type nonrec kms_key_id = string
type nonrec ebs_block_device = {
  1. volume_size : non_negative_integer option;
    (*

    Size of the EBS volume in gigabytes.

    *)
  2. throughput : non_negative_integer option;
    (*

    Volume data transfer rate.

    *)
  3. iops : non_negative_integer option;
    (*

    Input/output operations per second for the volume.

    *)
  4. kms_key_id : kms_key_id option;
    (*

    KMS key used for volume encryption.

    *)
  5. encrypted : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Indicates if the volume is encrypted.

    *)
  6. volume_type : volume_type_enum option;
    (*

    Type of EBS volume (e.g., gp2, io1).

    *)
}

Defines configuration for an Elastic Block Store volume.

type nonrec block_device_mapping_request = {
  1. virtual_name : virtual_name option;
    (*

    Virtual device name for ephemeral storage.

    *)
  2. no_device : device_name option;
    (*

    Indicates device should not be mapped.

    *)
  3. ebs : ebs_block_device option;
    (*

    EBS volume configuration for the device.

    *)
  4. device_name : device_name option;
    (*

    Name of the device for storage mapping.

    *)
}

Defines device mapping for WorkSpace Instance storage.

type nonrec block_device_mappings = block_device_mapping_request list
type nonrec capacity_reservation_preference_enum =
  1. | NONE
  2. | OPEN
  3. | CAPACITY_RESERVATIONS_ONLY
type nonrec capacity_reservation_target = {
  1. capacity_reservation_resource_group_arn : ar_n option;
    (*

    ARN of the capacity reservation resource group.

    *)
  2. capacity_reservation_id : string128 option;
    (*

    Unique identifier for the capacity reservation.

    *)
}

Identifies a specific capacity reservation.

type nonrec capacity_reservation_specification = {
  1. capacity_reservation_target : capacity_reservation_target option;
    (*

    Specific capacity reservation target.

    *)
  2. capacity_reservation_preference : capacity_reservation_preference_enum option;
    (*

    Preference for using capacity reservation.

    *)
}

Specifies capacity reservation preferences.

type nonrec amd_sev_snp_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec cpu_options_request = {
  1. threads_per_core : non_negative_integer option;
    (*

    Number of threads per CPU core.

    *)
  2. core_count : non_negative_integer option;
    (*

    Number of CPU cores to allocate.

    *)
  3. amd_sev_snp : amd_sev_snp_enum option;
    (*

    AMD Secure Encrypted Virtualization configuration.

    *)
}

Configures CPU-specific settings for WorkSpace Instance.

type nonrec cpu_credits_enum =
  1. | UNLIMITED
  2. | STANDARD
type nonrec credit_specification_request = {
  1. cpu_credits : cpu_credits_enum option;
    (*

    CPU credit specification mode.

    *)
}

Defines CPU credit configuration for burstable instances.

type nonrec enclave_options_request = {
  1. enabled : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables or disables AWS Nitro Enclaves for enhanced security.

    *)
}

Configures AWS Nitro Enclave options for the WorkSpace Instance.

type nonrec hibernation_options_request = {
  1. configured : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables or disables instance hibernation capability.

    *)
}

Defines hibernation configuration for the WorkSpace Instance.

type nonrec iam_instance_profile_specification = {
  1. name : string64 option;
    (*

    Name of the IAM instance profile.

    *)
  2. arn : ar_n option;
    (*

    Amazon Resource Name (ARN) of the IAM instance profile.

    *)
}

Defines IAM instance profile configuration for WorkSpace Instance.

type nonrec image_id = string
type nonrec instance_market_options_request = {
  1. spot_options : spot_market_options option;
    (*

    Configuration options for spot instance deployment.

    *)
  2. market_type : market_type_enum option;
    (*

    Specifies the type of marketplace for instance deployment.

    *)
}

Configures marketplace-specific instance deployment options.

type nonrec instance_type = string
type nonrec license_configuration_request = {
  1. license_configuration_arn : ar_n option;
    (*

    ARN of the license configuration for the WorkSpace Instance.

    *)
}

Specifies license configuration for WorkSpace Instance.

type nonrec license_specifications = license_configuration_request list
type nonrec auto_recovery_enum =
  1. | DEFAULT
  2. | DISABLED
type nonrec instance_maintenance_options_request = {
  1. auto_recovery : auto_recovery_enum option;
    (*

    Enables or disables automatic instance recovery.

    *)
}

Configures automatic maintenance settings for WorkSpace Instance.

type nonrec http_endpoint_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec http_protocol_ipv6_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec http_put_response_hop_limit = int
type nonrec http_tokens_enum =
  1. | REQUIRED
  2. | OPTIONAL
type nonrec instance_metadata_tags_enum =
  1. | DISABLED
  2. | ENABLED
type nonrec instance_metadata_options_request = {
  1. instance_metadata_tags : instance_metadata_tags_enum option;
    (*

    Enables or disables instance metadata tags retrieval.

    *)
  2. http_tokens : http_tokens_enum option;
    (*

    Configures token requirement for instance metadata retrieval.

    *)
  3. http_put_response_hop_limit : http_put_response_hop_limit option;
    (*

    Sets maximum number of network hops for metadata PUT responses.

    *)
  4. http_protocol_ipv6 : http_protocol_ipv6_enum option;
    (*

    Configures IPv6 support for instance metadata HTTP protocol.

    *)
  5. http_endpoint : http_endpoint_enum option;
    (*

    Enables or disables HTTP endpoint for instance metadata.

    *)
}

Defines instance metadata service configuration.

type nonrec bandwidth_weighting_enum =
  1. | EBS_1
  2. | VPC_1
  3. | DEFAULT
type nonrec instance_network_performance_options_request = {
  1. bandwidth_weighting : bandwidth_weighting_enum option;
    (*

    Defines bandwidth allocation strategy for network interfaces.

    *)
}

Configures network performance settings for WorkSpace Instance.

type nonrec managed_instance_request = {
  1. user_data : user_data option;
    (*

    Provides custom initialization data for the instance.

    *)
  2. tag_specifications : tag_specifications option;
    (*

    Configures resource tagging specifications.

    *)
  3. subnet_id : subnet_id option;
    (*

    Identifies the subnet for the instance.

    *)
  4. security_groups : security_group_names option;
    (*

    Configures security group settings.

    *)
  5. security_group_ids : security_group_ids option;
    (*

    Specifies security group identifiers.

    *)
  6. ramdisk_id : string128 option;
    (*

    Identifies the ramdisk for the instance.

    *)
  7. private_ip_address : ipv4_address option;
    (*

    Specifies the primary private IP address.

    *)
  8. private_dns_name_options : private_dns_name_options_request option;
    (*

    Configures private DNS name settings.

    *)
  9. placement : placement option;
    (*

    Specifies instance placement preferences.

    *)
  10. network_performance_options : instance_network_performance_options_request option;
    (*

    Defines network performance configuration.

    *)
  11. network_interfaces : network_interfaces option;
    (*

    Configures network interface settings.

    *)
  12. monitoring : run_instances_monitoring_enabled option;
    (*

    Enables or disables detailed instance monitoring.

    *)
  13. metadata_options : instance_metadata_options_request option;
    (*

    Configures instance metadata service settings.

    *)
  14. maintenance_options : instance_maintenance_options_request option;
    (*

    Defines automatic maintenance settings.

    *)
  15. license_specifications : license_specifications option;
    (*

    Configures license-related settings.

    *)
  16. key_name : string64 option;
    (*

    Specifies the key pair for instance access.

    *)
  17. kernel_id : string128 option;
    (*

    Identifies the kernel for the instance.

    *)
  18. ipv6_address_count : non_negative_integer option;
    (*

    Specifies number of IPv6 addresses to assign.

    *)
  19. ipv6_addresses : ipv6_addresses option;
    (*

    Configures specific IPv6 addresses.

    *)
  20. instance_type : instance_type option;
    (*

    Specifies the WorkSpace Instance type.

    *)
  21. instance_market_options : instance_market_options_request option;
    (*

    Configures marketplace-specific deployment options.

    *)
  22. image_id : image_id option;
    (*

    Identifies the Amazon Machine Image (AMI) for the instance.

    *)
  23. iam_instance_profile : iam_instance_profile_specification option;
    (*

    Specifies IAM instance profile configuration.

    *)
  24. hibernation_options : hibernation_options_request option;
    (*

    Configures instance hibernation capabilities.

    *)
  25. enclave_options : enclave_options_request option;
    (*

    Configures AWS Nitro Enclave settings.

    *)
  26. enable_primary_ipv6 : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables primary IPv6 address configuration.

    *)
  27. ebs_optimized : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Enables optimized EBS performance.

    *)
  28. disable_api_stop : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Prevents API-initiated instance stop.

    *)
  29. credit_specification : credit_specification_request option;
    (*

    Defines CPU credit configuration for burstable instances.

    *)
  30. cpu_options : cpu_options_request option;
    (*

    Configures CPU-specific settings.

    *)
  31. capacity_reservation_specification : capacity_reservation_specification option;
    (*

    Specifies capacity reservation preferences.

    *)
  32. block_device_mappings : block_device_mappings option;
    (*

    Configures block device mappings for storage.

    *)
}

Defines comprehensive configuration for a managed WorkSpace Instance.

type nonrec list_workspace_instances_response = {
  1. next_token : next_token option;
    (*

    Token for retrieving additional WorkSpaces Instances if the result set is paginated.

    *)
  2. workspace_instances : workspace_instances;
    (*

    Collection of WorkSpaces Instances returned by the query.

    *)
}

Contains the list of WorkSpaces Instances matching the specified criteria.

type nonrec list_workspace_instances_request = {
  1. next_token : next_token option;
    (*

    Pagination token for retrieving subsequent pages of WorkSpaces Instances.

    *)
  2. max_results : max_results option;
    (*

    Maximum number of WorkSpaces Instances to return in a single response.

    *)
  3. provision_states : provision_states option;
    (*

    Filter WorkSpaces Instances by their current provisioning states.

    *)
}

Defines filters and pagination parameters for retrieving WorkSpaces Instances.

type nonrec list_tags_for_resource_response = {
  1. tags : tag_list option;
    (*

    Collection of tags associated with the WorkSpace Instance.

    *)
}

Returns the list of tags for the specified WorkSpace Instance.

type nonrec list_tags_for_resource_request = {
  1. workspace_instance_id : workspace_instance_id;
    (*

    Unique identifier of the WorkSpace Instance.

    *)
}

Specifies the WorkSpace Instance to retrieve tags for.

type nonrec list_regions_response = {
  1. next_token : next_token option;
    (*

    Token for retrieving additional regions if the result set is paginated.

    *)
  2. regions : region_list;
    (*

    Collection of AWS regions supported by WorkSpaces Instances.

    *)
}

Contains the list of supported AWS regions for WorkSpaces Instances.

type nonrec list_regions_request = {
  1. next_token : next_token option;
    (*

    Pagination token for retrieving subsequent pages of region results.

    *)
  2. max_results : max_results option;
    (*

    Maximum number of regions to return in a single API call. Enables pagination of region results.

    *)
}

Defines input parameters for retrieving supported WorkSpaces Instances regions.

type nonrec instance_type_info = {
  1. supported_instance_configurations : supported_instance_configurations option;
    (*

    Lists all valid combinations of tenancy, platform type, and billing mode supported for the specific WorkSpace Instance type. Contains the complete set of configuration options available for this instance type.

    *)
  2. instance_type : instance_type option;
    (*

    Unique identifier for the WorkSpace Instance type.

    *)
}

Provides details about a specific WorkSpace Instance type.

type nonrec instance_types = instance_type_info list
type nonrec list_instance_types_response = {
  1. next_token : next_token option;
    (*

    Token for retrieving additional instance types if the result set is paginated.

    *)
  2. instance_types : instance_types;
    (*

    Collection of supported instance types for WorkSpaces Instances.

    *)
}

Contains the list of instance types supported by WorkSpaces Instances.

type nonrec list_instance_types_max_results = int
type nonrec instance_configuration_filter = {
  1. tenancy : instance_configuration_tenancy_enum;
    (*

    Filters WorkSpace Instance types by tenancy model. Allows customers to find instances that match their tenancy requirements, such as SHARED or DEDICATED.

    *)
  2. platform_type : platform_type_enum;
    (*

    Filters WorkSpace Instance types by operating system platform. Allows customers to find instances that support their desired OS, such as Windows, Linux/UNIX, Ubuntu Pro, RHEL, or SUSE.

    *)
  3. billing_mode : billing_mode;
    (*

    Filters WorkSpace Instance types based on supported billing modes. Allows customers to search for instance types that support their preferred billing model, such as HOURLY or MONTHLY billing.

    *)
}

Defines filtering criteria for WorkSpace Instance type searches. Combines multiple filter conditions including billing mode, platform type, and tenancy to help customers find instance types that meet their specific requirements.

type nonrec list_instance_types_request = {
  1. instance_configuration_filter : instance_configuration_filter option;
    (*

    Optional filter to narrow instance type results based on configuration requirements. Only returns instance types that support the specified combination of tenancy, platform type, and billing mode.

    *)
  2. next_token : next_token option;
    (*

    Pagination token for retrieving subsequent pages of instance type results.

    *)
  3. max_results : list_instance_types_max_results option;
    (*

    Maximum number of instance types to return in a single API call. Enables pagination of instance type results.

    *)
}

Defines input parameters for retrieving supported WorkSpaces Instances instance types.

type nonrec ec2_instance_error = {
  1. ec2_error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    Detailed description of the EC2 instance error.

    *)
  2. ec2_exception_type : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    Type of exception encountered during EC2 instance operation.

    *)
  3. ec2_error_code : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    Unique error code identifying the specific EC2 instance error.

    *)
}

Captures detailed error information for EC2 instance operations.

type nonrec ec2_instance_errors = ec2_instance_error list
type nonrec billing_configuration = {
  1. billing_mode : billing_mode;
    (*

    Specifies the billing mode for WorkSpace Instances. MONTHLY provides fixed monthly rates for predictable budgeting, while HOURLY enables pay-per-second billing for actual usage.

    *)
}

Defines billing configuration settings for WorkSpace Instances, containing the billing mode selection.

type nonrec get_workspace_instance_response = {
  1. billing_configuration : billing_configuration option;
    (*

    Returns the current billing configuration for the WorkSpace Instance, indicating the active billing mode.

    *)
  2. ec2_managed_instance : ec2_managed_instance option;
    (*

    Details of the associated EC2 managed instance.

    *)
  3. workspace_instance_id : workspace_instance_id option;
    (*

    Unique identifier of the retrieved WorkSpaces Instance.

    *)
  4. provision_state : provision_state_enum option;
    (*

    Current provisioning state of the WorkSpaces Instance.

    *)
  5. ec2_instance_errors : ec2_instance_errors option;
    (*

    Includes any underlying EC2 instance errors encountered.

    *)
  6. workspace_instance_errors : workspace_instance_errors option;
    (*

    Captures any errors specific to the WorkSpace Instance lifecycle.

    *)
}

Provides comprehensive details about the requested WorkSpaces Instance.

type nonrec get_workspace_instance_request = {
  1. workspace_instance_id : workspace_instance_id;
    (*

    Unique identifier of the WorkSpace Instance to retrieve.

    *)
}

Identifies the WorkSpaces Instance to retrieve detailed information for.

type nonrec conflict_exception = {
  1. resource_type : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Type of the conflicting resource.

    *)
  2. resource_id : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Identifier of the conflicting resource.

    *)
  3. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    Description of the conflict encountered.

    *)
}

Signals a conflict with the current state of the resource.

type nonrec disassociate_volume_response = unit
type nonrec disassociate_mode_enum =
  1. | NO_FORCE
  2. | FORCE
type nonrec disassociate_volume_request = {
  1. disassociate_mode : disassociate_mode_enum option;
    (*

    Mode for volume detachment.

    *)
  2. device : device_name option;
    (*

    Device path of volume to detach.

    *)
  3. volume_id : volume_id;
    (*

    Volume to be detached.

    *)
  4. workspace_instance_id : workspace_instance_id;
    (*

    WorkSpace Instance to detach volume from.

    *)
}

Specifies volume detachment parameters.

type nonrec delete_workspace_instance_response = unit
type nonrec delete_workspace_instance_request = {
  1. workspace_instance_id : workspace_instance_id;
    (*

    Unique identifier of the WorkSpaces Instance targeted for deletion.

    *)
}

The WorkSpace to delete

type nonrec delete_volume_response = unit
type nonrec delete_volume_request = {
  1. volume_id : volume_id;
    (*

    Identifier of the volume to delete.

    *)
}

Specifies the volume to delete.

type nonrec create_workspace_instance_response = {
  1. workspace_instance_id : workspace_instance_id option;
    (*

    Unique identifier assigned to the newly created WorkSpaces Instance.

    *)
}

Returns the unique identifier for the newly created WorkSpaces Instance.

type nonrec client_token = string
type nonrec create_workspace_instance_request = {
  1. billing_configuration : billing_configuration option;
    (*

    Optional billing configuration for the WorkSpace Instance. Allows customers to specify their preferred billing mode when creating a new instance. Defaults to hourly billing if not specified.

    *)
  2. managed_instance : managed_instance_request;
    (*

    Comprehensive configuration settings for the WorkSpaces Instance, including network, compute, and storage parameters.

    *)
  3. tags : tag_list option;
    (*

    Optional metadata tags for categorizing and managing WorkSpaces Instances.

    *)
  4. client_token : client_token option;
    (*

    Unique token to ensure idempotent instance creation, preventing duplicate workspace launches.

    *)
}

Defines the configuration parameters for creating a new WorkSpaces Instance.

type nonrec create_volume_response = {
  1. volume_id : volume_id option;
    (*

    Unique identifier for the new volume.

    *)
}

Returns the created volume identifier.

type nonrec create_volume_request = {
  1. volume_type : volume_type_enum option;
    (*

    Type of EBS volume.

    *)
  2. throughput : non_negative_integer option;
    (*

    Volume throughput performance.

    *)
  3. tag_specifications : tag_specifications option;
    (*

    Metadata tags for the volume.

    *)
  4. snapshot_id : snapshot_id option;
    (*

    Source snapshot for volume creation.

    *)
  5. size_in_g_b : non_negative_integer option;
    (*

    Volume size in gigabytes.

    *)
  6. kms_key_id : kms_key_id option;
    (*

    KMS key for volume encryption.

    *)
  7. iops : non_negative_integer option;
    (*

    Input/output operations per second for the volume.

    *)
  8. encrypted : Smaws_Lib.Smithy_api.Types.boolean_ option;
    (*

    Indicates if the volume should be encrypted.

    *)
  9. client_token : client_token option;
    (*

    Unique token to prevent duplicate volume creation.

    *)
  10. availability_zone : string64;
    (*

    Availability zone for the volume.

    *)
}

Specifies volume creation parameters.

type nonrec associate_volume_response = unit
type nonrec associate_volume_request = {
  1. device : device_name;
    (*

    Device path for volume attachment.

    *)
  2. volume_id : volume_id;
    (*

    Volume to be attached.

    *)
  3. workspace_instance_id : workspace_instance_id;
    (*

    WorkSpace Instance to attach volume to.

    *)
}

Specifies volume attachment parameters.