Microsoft.DevCenter projects/pools

Bicep resource definition

The projects/pools resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DevCenter/projects/pools resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.DevCenter/projects/pools@2024-10-01-preview' = {
  parent: resourceSymbolicName
  location: 'string'
  name: 'string'
  properties: {
    devBoxDefinition: {
      imageReference: {
        id: 'string'
      }
      sku: {
        capacity: int
        family: 'string'
        name: 'string'
        size: 'string'
        tier: 'string'
      }
    }
    devBoxDefinitionName: 'string'
    devBoxDefinitionType: 'string'
    displayName: 'string'
    licenseType: 'string'
    localAdministrator: 'string'
    managedVirtualNetworkRegions: [
      'string'
    ]
    networkConnectionName: 'string'
    singleSignOnStatus: 'string'
    stopOnDisconnect: {
      gracePeriodMinutes: int
      status: 'string'
    }
    stopOnNoConnect: {
      gracePeriodMinutes: int
      status: 'string'
    }
    virtualNetworkType: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Property values

ImageReference

Name Description Value
id Image ID, or Image version ID. When Image ID is provided, its latest version will be used. string

Microsoft.DevCenter/projects/pools

Name Description Value
location The geo-location where the resource lives string (required)
name The resource name string

Constraints:
Min length = 3
Max length = 3
Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (required)
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: projects
properties Pool properties PoolProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates

PoolDevBoxDefinition

Name Description Value
imageReference Image reference information. ImageReference
sku The SKU for Dev Boxes created from the Pool. Sku

PoolProperties

Name Description Value
devBoxDefinition A definition of the machines that are created from this Pool. Will be ignored if devBoxDefinitionType is Reference or not provided. PoolDevBoxDefinition
devBoxDefinitionName Name of a Dev Box definition in parent Project of this Pool. Will be ignored if devBoxDefinitionType is Value. string
devBoxDefinitionType Indicates if the pool is created from an existing Dev Box Definition or if one is provided directly. 'Reference'
'Value'
displayName The display name of the pool. string
licenseType Specifies the license type indicating the caller has already acquired licenses for the Dev Boxes that will be created. 'Windows_Client'
localAdministrator Indicates whether owners of Dev Boxes in this pool are added as local administrators on the Dev Box. 'Disabled'
'Enabled'
managedVirtualNetworkRegions The regions of the managed virtual network (required when managedNetworkType is Managed). string[]
networkConnectionName Name of a Network Connection in parent Project of this Pool string
singleSignOnStatus Indicates whether Dev Boxes in this pool are created with single sign on enabled. The also requires that single sign on be enabled on the tenant. 'Disabled'
'Enabled'
stopOnDisconnect Stop on disconnect configuration settings for Dev Boxes created in this pool. StopOnDisconnectConfiguration
stopOnNoConnect Stop on no connect configuration settings for Dev Boxes created in this pool. StopOnNoConnectConfiguration
virtualNetworkType Indicates whether the pool uses a Virtual Network managed by Microsoft or a customer provided network. 'Managed'
'Unmanaged'

Sku

Name Description Value
capacity If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. int
family If the service has different generations of hardware, for the same SKU, then that can be captured here. string
name The name of the SKU. E.g. P3. It is typically a letter+number code string (required)
size The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. string
tier This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. 'Basic'
'Free'
'Premium'
'Standard'

StopOnDisconnectConfiguration

Name Description Value
gracePeriodMinutes The specified time in minutes to wait before stopping a Dev Box once disconnect is detected. int
status Whether the feature to stop the Dev Box on disconnect once the grace period has lapsed is enabled. 'Disabled'
'Enabled'

StopOnNoConnectConfiguration

Name Description Value
gracePeriodMinutes The specified time in minutes to wait before stopping a Dev Box if no connection is made. int
status Enables the feature to stop a started Dev Box when it has not been connected to, once the grace period has lapsed. 'Disabled'
'Enabled'

TrackedResourceTags

Name Description Value

Quickstart samples

The following quickstart samples deploy this resource type.

Bicep File Description
Configure Dev Box service This template would create all Dev Box admin resources as per Dev Box quick start guide (/azure/dev-box/quickstart-create-dev-box). You can view all resources created, or directly go to DevPortal.microsoft.com to create your first Dev Box.
Deploy Dev Box Service with built-in image This template provides a way to deploy an Dev Box service with built-in image.

ARM template resource definition

The projects/pools resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DevCenter/projects/pools resource, add the following JSON to your template.

{
  "type": "Microsoft.DevCenter/projects/pools",
  "apiVersion": "2024-10-01-preview",
  "name": "string",
  "location": "string",
  "properties": {
    "devBoxDefinition": {
      "imageReference": {
        "id": "string"
      },
      "sku": {
        "capacity": "int",
        "family": "string",
        "name": "string",
        "size": "string",
        "tier": "string"
      }
    },
    "devBoxDefinitionName": "string",
    "devBoxDefinitionType": "string",
    "displayName": "string",
    "licenseType": "string",
    "localAdministrator": "string",
    "managedVirtualNetworkRegions": [ "string" ],
    "networkConnectionName": "string",
    "singleSignOnStatus": "string",
    "stopOnDisconnect": {
      "gracePeriodMinutes": "int",
      "status": "string"
    },
    "stopOnNoConnect": {
      "gracePeriodMinutes": "int",
      "status": "string"
    },
    "virtualNetworkType": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property values

ImageReference

Name Description Value
id Image ID, or Image version ID. When Image ID is provided, its latest version will be used. string

Microsoft.DevCenter/projects/pools

Name Description Value
apiVersion The api version '2024-10-01-preview'
location The geo-location where the resource lives string (required)
name The resource name string

Constraints:
Min length = 3
Max length = 3
Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (required)
properties Pool properties PoolProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.DevCenter/projects/pools'

PoolDevBoxDefinition

Name Description Value
imageReference Image reference information. ImageReference
sku The SKU for Dev Boxes created from the Pool. Sku

PoolProperties

Name Description Value
devBoxDefinition A definition of the machines that are created from this Pool. Will be ignored if devBoxDefinitionType is Reference or not provided. PoolDevBoxDefinition
devBoxDefinitionName Name of a Dev Box definition in parent Project of this Pool. Will be ignored if devBoxDefinitionType is Value. string
devBoxDefinitionType Indicates if the pool is created from an existing Dev Box Definition or if one is provided directly. 'Reference'
'Value'
displayName The display name of the pool. string
licenseType Specifies the license type indicating the caller has already acquired licenses for the Dev Boxes that will be created. 'Windows_Client'
localAdministrator Indicates whether owners of Dev Boxes in this pool are added as local administrators on the Dev Box. 'Disabled'
'Enabled'
managedVirtualNetworkRegions The regions of the managed virtual network (required when managedNetworkType is Managed). string[]
networkConnectionName Name of a Network Connection in parent Project of this Pool string
singleSignOnStatus Indicates whether Dev Boxes in this pool are created with single sign on enabled. The also requires that single sign on be enabled on the tenant. 'Disabled'
'Enabled'
stopOnDisconnect Stop on disconnect configuration settings for Dev Boxes created in this pool. StopOnDisconnectConfiguration
stopOnNoConnect Stop on no connect configuration settings for Dev Boxes created in this pool. StopOnNoConnectConfiguration
virtualNetworkType Indicates whether the pool uses a Virtual Network managed by Microsoft or a customer provided network. 'Managed'
'Unmanaged'

Sku

Name Description Value
capacity If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. int
family If the service has different generations of hardware, for the same SKU, then that can be captured here. string
name The name of the SKU. E.g. P3. It is typically a letter+number code string (required)
size The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. string
tier This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. 'Basic'
'Free'
'Premium'
'Standard'

StopOnDisconnectConfiguration

Name Description Value
gracePeriodMinutes The specified time in minutes to wait before stopping a Dev Box once disconnect is detected. int
status Whether the feature to stop the Dev Box on disconnect once the grace period has lapsed is enabled. 'Disabled'
'Enabled'

StopOnNoConnectConfiguration

Name Description Value
gracePeriodMinutes The specified time in minutes to wait before stopping a Dev Box if no connection is made. int
status Enables the feature to stop a started Dev Box when it has not been connected to, once the grace period has lapsed. 'Disabled'
'Enabled'

TrackedResourceTags

Name Description Value

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Configure Dev Box service

Deploy to Azure
This template would create all Dev Box admin resources as per Dev Box quick start guide (/azure/dev-box/quickstart-create-dev-box). You can view all resources created, or directly go to DevPortal.microsoft.com to create your first Dev Box.
Deploy Dev Box Service with built-in image

Deploy to Azure
This template provides a way to deploy an Dev Box service with built-in image.

Terraform (AzAPI provider) resource definition

The projects/pools resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DevCenter/projects/pools resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DevCenter/projects/pools@2024-10-01-preview"
  name = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = jsonencode({
    properties = {
      devBoxDefinition = {
        imageReference = {
          id = "string"
        }
        sku = {
          capacity = int
          family = "string"
          name = "string"
          size = "string"
          tier = "string"
        }
      }
      devBoxDefinitionName = "string"
      devBoxDefinitionType = "string"
      displayName = "string"
      licenseType = "string"
      localAdministrator = "string"
      managedVirtualNetworkRegions = [
        "string"
      ]
      networkConnectionName = "string"
      singleSignOnStatus = "string"
      stopOnDisconnect = {
        gracePeriodMinutes = int
        status = "string"
      }
      stopOnNoConnect = {
        gracePeriodMinutes = int
        status = "string"
      }
      virtualNetworkType = "string"
    }
  })
}

Property values

ImageReference

Name Description Value
id Image ID, or Image version ID. When Image ID is provided, its latest version will be used. string

Microsoft.DevCenter/projects/pools

Name Description Value
location The geo-location where the resource lives string (required)
name The resource name string

Constraints:
Min length = 3
Max length = 3
Pattern = ^[a-zA-Z0-9][a-zA-Z0-9-_.]{2,62}$ (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: projects
properties Pool properties PoolProperties
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.DevCenter/projects/pools@2024-10-01-preview"

PoolDevBoxDefinition

Name Description Value
imageReference Image reference information. ImageReference
sku The SKU for Dev Boxes created from the Pool. Sku

PoolProperties

Name Description Value
devBoxDefinition A definition of the machines that are created from this Pool. Will be ignored if devBoxDefinitionType is Reference or not provided. PoolDevBoxDefinition
devBoxDefinitionName Name of a Dev Box definition in parent Project of this Pool. Will be ignored if devBoxDefinitionType is Value. string
devBoxDefinitionType Indicates if the pool is created from an existing Dev Box Definition or if one is provided directly. 'Reference'
'Value'
displayName The display name of the pool. string
licenseType Specifies the license type indicating the caller has already acquired licenses for the Dev Boxes that will be created. 'Windows_Client'
localAdministrator Indicates whether owners of Dev Boxes in this pool are added as local administrators on the Dev Box. 'Disabled'
'Enabled'
managedVirtualNetworkRegions The regions of the managed virtual network (required when managedNetworkType is Managed). string[]
networkConnectionName Name of a Network Connection in parent Project of this Pool string
singleSignOnStatus Indicates whether Dev Boxes in this pool are created with single sign on enabled. The also requires that single sign on be enabled on the tenant. 'Disabled'
'Enabled'
stopOnDisconnect Stop on disconnect configuration settings for Dev Boxes created in this pool. StopOnDisconnectConfiguration
stopOnNoConnect Stop on no connect configuration settings for Dev Boxes created in this pool. StopOnNoConnectConfiguration
virtualNetworkType Indicates whether the pool uses a Virtual Network managed by Microsoft or a customer provided network. 'Managed'
'Unmanaged'

Sku

Name Description Value
capacity If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted. int
family If the service has different generations of hardware, for the same SKU, then that can be captured here. string
name The name of the SKU. E.g. P3. It is typically a letter+number code string (required)
size The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. string
tier This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT. 'Basic'
'Free'
'Premium'
'Standard'

StopOnDisconnectConfiguration

Name Description Value
gracePeriodMinutes The specified time in minutes to wait before stopping a Dev Box once disconnect is detected. int
status Whether the feature to stop the Dev Box on disconnect once the grace period has lapsed is enabled. 'Disabled'
'Enabled'

StopOnNoConnectConfiguration

Name Description Value
gracePeriodMinutes The specified time in minutes to wait before stopping a Dev Box if no connection is made. int
status Enables the feature to stop a started Dev Box when it has not been connected to, once the grace period has lapsed. 'Disabled'
'Enabled'

TrackedResourceTags

Name Description Value