swagger: '2.0'
info:
version: 2020-08-01-preview
title: Microsoft Azure AccessControlClient AccessConnector SessionHostConfiguration API
schemes:
- https
tags:
- name: SessionHostConfiguration
paths:
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostConfigurations/default
: put:
tags:
- SessionHostConfiguration
operationId: microsoftAzureSessionhostconfigurationsCreateorupdate
description: Create or update a SessionHostConfiguration.
x-ms-examples:
SessionHostConfigurations_Create:
$ref: ./examples/SessionHostConfigurations_Create.json
parameters:
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter
- $ref: '#/parameters/HostPoolNameParameter'
- name: sessionHostConfiguration
description: Object containing SessionHostConfiguration definitions.
in: body
required: true
schema:
$ref: '#/definitions/SessionHostConfiguration'
responses:
'200':
description: Successfully initiated SessionHostConfiguration Update validation.
headers:
Azure-AsyncOperation:
description: The URL of the resource used to check the status of the asynchronous operation.
type: string
schema:
$ref: '#/definitions/SessionHostConfiguration'
'201':
description: Successfully created Session Host Configuration.
headers:
Azure-AsyncOperation:
description: The URL of the resource used to check the status of the asynchronous operation.
type: string
schema:
$ref: '#/definitions/SessionHostConfiguration'
default:
description: Automation error response describing why the operation failed.
schema:
$ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse
x-ms-long-running-operation: true
x-ms-long-running-operation-options:
final-state-via: azure-async-operation
summary: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Desktopvirtualization Hostpools Hostpoolname Sessionhostconfigurations Default
patch:
tags:
- SessionHostConfiguration
operationId: microsoftAzureSessionhostconfigurationsUpdate
description: Update a SessionHostConfiguration.
x-ms-examples:
SessionHostConfigurations_Update:
$ref: ./examples/SessionHostConfigurations_Update.json
parameters:
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter
- $ref: '#/parameters/HostPoolNameParameter'
- name: sessionHostConfiguration
description: Object containing SessionHostConfiguration definitions.
in: body
required: false
schema:
$ref: '#/definitions/SessionHostConfigurationPatch'
responses:
'200':
description: Successfully created SessionHostConfiguration.
headers:
Azure-AsyncOperation:
description: The URL of the resource used to check the status of the asynchronous operation.
type: string
schema:
$ref: '#/definitions/SessionHostConfiguration'
'202':
description: Successfully created SessionHostConfiguration.
headers:
Location:
description: The URL of the resource used to check the status of the asynchronous operation.
type: string
Azure-AsyncOperation:
description: The URL of the resource used to check the status of the asynchronous operation.
type: string
Retry-After:
description: Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.
type: integer
format: int32
default:
description: Automation error response describing why the operation failed.
schema:
$ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse
x-ms-long-running-operation: true
x-ms-long-running-operation-options:
final-state-via: location
summary: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Desktopvirtualization Hostpools Hostpoolname Sessionhostconfigurations Default
get:
tags:
- SessionHostConfiguration
operationId: microsoftAzureSessionhostconfigurationsGet
description: Get a SessionHostConfiguration.
x-ms-examples:
SessionHostConfigurations_Get:
$ref: ./examples/SessionHostConfigurations_Get.json
parameters:
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter
- $ref: '#/parameters/HostPoolNameParameter'
responses:
'200':
description: Successfully retrieved sessionHostConfiguration.
schema:
$ref: '#/definitions/SessionHostConfiguration'
default:
description: Automation error response describing why the operation failed.
schema:
$ref: '#/definitions/CloudError'
summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Desktopvirtualization Hostpools Hostpoolname Sessionhostconfigurations Default
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHostConfigurations
: get:
tags:
- SessionHostConfiguration
operationId: microsoftAzureSessionhostconfigurationsListbyhostpool
description: List sessionHostConfigurations.
x-ms-examples:
SessionHostConfigurations_ListByHostPool:
$ref: ./examples/SessionHostConfigurations_ListByHostPool.json
parameters:
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter
- $ref: '#/parameters/HostPoolNameParameter'
responses:
'200':
description: Successfully retrieved sessionHostConfigurations in HostPool.
schema:
$ref: '#/definitions/SessionHostConfigurationList'
default:
description: Automation error response describing why the operation failed.
schema:
$ref: '#/definitions/CloudError'
x-ms-pageable:
nextLinkName: nextLink
summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Desktopvirtualization Hostpools Hostpoolname Sessionhostconfigurations
definitions:
SessionHostConfiguration:
type: object
description: Represents a SessionHostConfiguration definition.
allOf:
- $ref: ../../../../../common-types/resource-management/v1/types.json#/definitions/Resource
required:
- properties
properties:
systemData:
$ref: ../../../../../common-types/resource-management/v2/types.json#/definitions/systemData
description: Metadata pertaining to creation and last modification of the resource.
properties:
description: Detailed properties for SessionHostConfiguration
x-ms-client-flatten: true
$ref: '#/definitions/SessionHostConfigurationProperties'
DiskInfoProperties:
description: Disk information.
type: object
required:
- type
properties:
type:
type: string
enum:
- Standard_LRS
- Premium_LRS
- StandardSSD_LRS
x-ms-enum:
name: VirtualMachineDiskType
modelAsString: true
values:
- value: Standard_LRS
description: Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access.
- value: Premium_LRS
description: Premium SSD locally redundant storage. Best for production and performance sensitive workloads.
- value: StandardSSD_LRS
description: Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test.
description: The disk type used by virtual machine in hostpool session host.
CloudErrorProperties:
description: Cloud error object properties.
type: object
properties:
code:
description: Error code
type: string
message:
description: Error message indicating why the operation failed.
type: string
BootDiagnosticsInfoPatchProperties:
type: object
properties:
enabled:
type: boolean
description: Whether boot diagnostics should be enabled on the Virtual Machine.
storageUri:
type: string
description: Uri of the storage account to use for placing the console output and screenshot.
If storageUri is not specified while enabling boot diagnostics, managed storage will be used.
description: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.
You can easily view the output of your console log.
Azure also enables you to see a screenshot of the VM from the hypervisor.
DomainInfoPatchProperties:
description: Domain configurations of session hosts.
type: object
properties:
activeDirectoryInfo:
$ref: '#/definitions/ActiveDirectoryInfoPatchProperties'
description: Active directory info. Only one should be populated based on the join type.
SecurityInfoProperties:
description: Security information.
type: object
properties:
type:
type: string
enum:
- Standard
- TrustedLaunch
- ConfidentialVM
x-ms-enum:
name: VirtualMachineSecurityType
modelAsString: true
values:
- value: Standard
description: Standard security protocol. No additional parameters
- value: TrustedLaunch
description: TrustedLaunch allows for secure boot adn vTPM
- value: ConfidentialVM
description: Confidential Virtual Machine security protocol
default: Standard
description: The security type used by virtual machine in hostpool session host. Default is Standard.
secureBootEnabled:
type: boolean
description: Whether to use secureBoot on the virtual machine.
vTpmEnabled:
type: boolean
description: Whether to use vTPM on the virtual machine.
SecurityInfoPatchProperties:
description: Security information.
type: object
properties:
type:
type: string
enum:
- Standard
- TrustedLaunch
- ConfidentialVM
x-ms-enum:
name: VirtualMachineSecurityType
modelAsString: true
values:
- value: Standard
description: Standard security protocol. No additional parameters
- value: TrustedLaunch
description: TrustedLaunch allows for secure boot adn vTPM
- value: ConfidentialVM
description: Confidential Virtual Machine security protocol
description: The security type used by virtual machine in hostpool session host.
secureBootEnabled:
type: boolean
description: Whether to use secureBoot on the virtual machine.
vTpmEnabled:
type: boolean
description: Whether to use vTPM on the virtual machine.
ActiveDirectoryInfoProperties:
description: Active directory info. Only one should be populated based on the join type.
type: object
required:
- domainCredentials
- ouPath
properties:
domainCredentials:
$ref: '#/definitions/KeyVaultCredentialsProperties'
description: Credentials needed to create the virtual machine.
ouPath:
type: string
description: The ou path.
domainName:
type: string
description: The domain a virtual machine connected to a hostpool will join.
KeyVaultCredentialsPatchProperties:
description: Credentials kept in the keyvault.
type: object
properties:
usernameKeyVaultSecretUri:
type: string
description: The uri to access the secret that the username is stored in.
passwordKeyVaultSecretUri:
type: string
description: The uri to access the secret that the password is stored in.
ImageInfoPatchProperties:
description: Image configurations of session host in a HostPool.
type: object
properties:
type:
enum:
- Marketplace
- Custom
x-ms-enum:
name: type
modelAsString: true
values:
- value: Marketplace
description: Using default marketplace images offered by Azure Marketplace.
- value: Custom
description: Using a custom image.
type: string
description: The type of image session hosts use in the hostpool.
x-nullable: false
marketplaceInfo:
$ref: '#/definitions/MarketplaceInfoPatchProperties'
description: The values to uniquely identify a marketplace image. Only one should be populated based on the image type.
customInfo:
$ref: '#/definitions/CustomInfoPatchProperties'
description: The values to uniquely identify a custom image. Only one should be populated based on the image type.
DiskInfoPatchProperties:
description: Disk information.
type: object
properties:
type:
type: string
enum:
- Standard_LRS
- Premium_LRS
- StandardSSD_LRS
x-ms-enum:
name: VirtualMachineDiskType
modelAsString: true
values:
- value: Standard_LRS
description: Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access.
- value: Premium_LRS
description: Premium SSD locally redundant storage. Best for production and performance sensitive workloads.
- value: StandardSSD_LRS
description: Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test.
description: The disk type used by virtual machine in hostpool session host.
CustomInfoProperties:
description: Custom image information.
type: object
required:
- resourceId
properties:
resourceId:
type: string
format: arm-id
description: The resource id of the custom image.
SessionHostConfigurationPatchProperties:
description: Session host configurations of HostPool.
type: object
properties:
friendlyName:
type: string
description: Friendly name to describe this version of the SessionHostConfiguration.
maxLength: 260
vmTags:
type: object
additionalProperties:
type: string
description: Hashtable that lists key/value pair tags to apply to the VMs
vmLocation:
type: string
description: The Location for the session host to be created in
vmResourceGroup:
type: string
description: The ResourceGroup for the session hosts to be created in. It will default to the ResourceGroup of the hostpool if not provided.
vmNamePrefix:
type: string
description: The prefix that should be associated with session host names
maxLength: 11
availabilityZones:
type: array
items:
type: integer
format: int32
description: Value for availability zones to be used by the session host. Should be from [1,2,3].
networkInfo:
$ref: '#/definitions/NetworkInfoProperties'
description: Network information.
vmSizeId:
type: string
description: The id of the size of a virtual machine connected to a hostpool.
diskInfo:
$ref: '#/definitions/DiskInfoPatchProperties'
description: Disk information.
customConfigurationScriptUrl:
type: string
description: The uri to the storage blob containing the arm template to be run on the virtual machine after provisioning.
maxLength: 260
imageInfo:
$ref: '#/definitions/ImageInfoPatchProperties'
description: Image configurations of HostPool.
domainInfo:
$ref: '#/definitions/DomainInfoPatchProperties'
description: Domain configurations of session hosts.
securityInfo:
$ref: '#/definitions/SecurityInfoPatchProperties'
description: Security information.
vmAdminCredentials:
$ref: '#/definitions/KeyVaultCredentialsPatchProperties'
description: Local Admin credentials for session hosts.
bootDiagnosticsInfo:
$ref: '#/definitions/BootDiagnosticsInfoPatchProperties'
description: Boot Diagnostics information.
KeyVaultCredentialsProperties:
description: Credentials kept in the keyvault.
type: object
required:
- usernameKeyVaultSecretUri
- passwordKeyVaultSecretUri
properties:
usernameKeyVaultSecretUri:
type: string
description: The uri to access the secret that the username is stored in.
passwordKeyVaultSecretUri:
type: string
description: The uri to access the secret that the password is stored in.
SessionHostConfigurationProperties:
description: Session host configurations of HostPool.
type: object
required:
- vmNamePrefix
- networkInfo
- vmSizeId
- diskInfo
- imageInfo
- domainInfo
- vmAdminCredentials
properties:
version:
format: date-time
type: string
description: The timestamp of the last update.
readOnly: true
friendlyName:
type: string
description: Friendly name to describe this version of the SessionHostConfiguration.
maxLength: 260
provisioningState:
description: Provisioning state of the Session Host Configuration.
enum:
- Succeeded
- Failed
- Canceled
- Provisioning
type: string
readOnly: true
x-ms-enum:
name: ProvisioningStateSHC
modelAsString: true
vmTags:
type: object
additionalProperties:
type: string
description: Hashtable that lists key/value pair tags to apply to the VMs
vmLocation:
type: string
description: The Location for the session host to be created in. It will default to the location of the hostpool if not provided.
vmResourceGroup:
type: string
description: The ResourceGroup for the session hosts to be created in. It will default to the ResourceGroup of the hostpool if not provided.
vmNamePrefix:
type: string
description: The prefix that should be associated with session host names
maxLength: 11
availabilityZones:
type: array
items:
type: integer
format: int32
description: Value for availability zones to be used by the session host. Should be from [1,2,3].
networkInfo:
$ref: '#/definitions/NetworkInfoProperties'
description: Network information.
vmSizeId:
type: string
description: The id of the size of a virtual machine connected to a hostpool.
diskInfo:
$ref: '#/definitions/DiskInfoProperties'
description: Disk information.
customConfigurationScriptUrl:
type: string
description: The uri to the storage blob containing the arm template to be run on the virtual machine after provisioning.
imageInfo:
$ref: '#/definitions/ImageInfoProperties'
description: Image configurations of HostPool.
domainInfo:
$ref: '#/definitions/DomainInfoProperties'
description: Domain configurations of session hosts.
securityInfo:
$ref: '#/definitions/SecurityInfoProperties'
description: Security information.
vmAdminCredentials:
$ref: '#/definitions/KeyVaultCredentialsProperties'
description: Local Admin credentials for session hosts.
bootDiagnosticsInfo:
$ref: '#/definitions/BootDiagnosticsInfoProperties'
description: Boot Diagnostics information.
MarketplaceInfoPatchProperties:
description: Marketplace image information.
type: object
properties:
offer:
type: string
description: The offer of the image.
publisher:
type: string
description: The publisher of the image.
sku:
type: string
description: The sku of the image.
exactVersion:
type: string
description: The exact version of the image.
MarketplaceInfoProperties:
description: Marketplace image information.
type: object
required:
- offer
- publisher
- sku
- exactVersion
properties:
offer:
type: string
description: The offer of the image.
publisher:
type: string
description: The publisher of the image.
sku:
type: string
description: The sku of the image.
exactVersion:
type: string
description: The exact version of the image.
ImageInfoProperties:
description: Image configurations of session host in a HostPool.
type: object
required:
- type
properties:
type:
enum:
- Marketplace
- Custom
x-ms-enum:
name: type
modelAsString: true
values:
- value: Marketplace
description: Using default marketplace images offered by Azure Marketplace.
- value: Custom
description: Using a custom image.
type: string
description: The type of image session hosts use in the hostpool.
x-nullable: false
marketplaceInfo:
$ref: '#/definitions/MarketplaceInfoProperties'
description: The values to uniquely identify a marketplace image. Only one should be populated based on the image type.
customInfo:
$ref: '#/definitions/CustomInfoProperties'
description: The values to uniquely identify a custom image. Only one should be populated based on the image type.
SessionHostConfigurationList:
type: object
title: SessionHostConfigurationList
description: List of SessionHostConfiguration definitions.
properties:
value:
type: array
description: List of SessionHostConfiguration definitions.
items:
$ref: '#/definitions/SessionHostConfiguration'
nextLink:
type: string
readOnly: true
description: Link to the next page of results.
DomainInfoProperties:
description: Domain configurations of session hosts.
type: object
required:
- joinType
properties:
joinType:
enum:
- ActiveDirectory
- AzureActiveDirectory
x-ms-enum:
name: DomainJoinType
modelAsString: true
values:
- value: ActiveDirectory
description: Using microsoft active directory.
- value: AzureActiveDirectory
description: Using microsoft azure active directory.
type: string
description: The type of domain join done by the virtual machine.
x-nullable: false
activeDirectoryInfo:
$ref: '#/definitions/ActiveDirectoryInfoProperties'
description: Active directory info. Only one should be populated based on the join type.
azureActiveDirectoryInfo:
$ref: '#/definitions/AzureActiveDirectoryInfoProperties'
description: Azure active directory info. Only one should be populated based on the join type.
SessionHostConfigurationPatch:
type: object
description: Represents a SessionHostConfigurationPatch definition.
properties:
properties:
description: Detailed properties for SessionHostConfigurationPatch
x-ms-client-flatten: true
$ref: '#/definitions/SessionHostConfigurationPatchProperties'
NetworkInfoProperties:
description: Network information.
type: object
required:
- subnetId
properties:
subnetId:
type: string
description: The resource ID of the subnet.
securityGroupId:
type: string
description: The resource ID of the security group. Any allowable/open ports should be specified in the NSG.
ActiveDirectoryInfoPatchProperties:
description: Active directory info. Only one should be populated based on the join type.
type: object
properties:
domainCredentials:
$ref: '#/definitions/KeyVaultCredentialsPatchProperties'
description: Credentials needed to create the virtual machine.
BootDiagnosticsInfoProperties:
type: object
properties:
enabled:
type: boolean
description: Whether boot diagnostics should be enabled on the Virtual Machine.
storageUri:
type: string
description: Uri of the storage account to use for placing the console output and screenshot.
If storageUri is not specified while enabling boot diagnostics, managed storage will be used.
description: Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.
You can easily view the output of your console log.
Azure also enables you to see a screenshot of the VM from the hypervisor.
AzureActiveDirectoryInfoProperties:
description: Azure Active directory info. Only one should be populated based on the join type.
type: object
required:
- mdmProviderGuid
properties:
mdmProviderGuid:
type: string
description: The mdm guid.
CloudError:
description: Cloud error object.
type: object
x-ms-external: true
properties:
error:
$ref: '#/definitions/CloudErrorProperties'
CustomInfoPatchProperties:
description: Custom image information.
type: object
properties:
resourceId:
type: string
format: arm-id
description: The resource id of the custom image.
parameters:
HostPoolNameParameter:
name: hostPoolName
in: path
required: true
type: string
description: The name of the host pool within the specified resource group
maxLength: 64
minLength: 3
x-ms-parameter-location: method
x-ms-parameterized-host:
hostTemplate: '{endpoint}'
useSchemePrefix: false
parameters:
- $ref: '#/parameters/Endpoint'