POST https://graph.microsoft.com/beta/deviceManagement/virtualEndpoint/cloudPcPools
Content-Type: application/json
{
"@odata.type":"#microsoft.graph.cloudPcAgentPool",
"displayName": "Contoso Development Pool",
"cloudPcConfiguration": {
"imageId": "microsoftwindowsdesktop_windows-ent-cpc_win11-23h2-ent-cpc-m365",
"imageType": "gallery",
"osLocale": "en-US"
},
"networkConfiguration": {
"@odata.type": "#microsoft.graph.cloudPcMicrosoftHostedNetworkConfiguration",
"geographicLocationType": "usWest",
"regionGroups": [
{
"regionGroup": "usWest",
"regions": ["westus2", "westus3"]
}
]
},
"billingConfiguration": {
"billingType": "payAsYouGo",
"billingPlanId": "00000000-0000-0000-0000-000000000001"
},
"scalingPolicy": {
"minimumCount": 2,
"maximumCount": 10
},
"capabilities": {
"@odata.type": "#microsoft.graph.cloudPcAgentPoolCapabilityConfiguration",
"enableSingleSignOn": true
}
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new CloudPcAgentPool
{
OdataType = "#microsoft.graph.cloudPcAgentPool",
DisplayName = "Contoso Development Pool",
CloudPcConfiguration = new CloudPcConfiguration
{
ImageId = "microsoftwindowsdesktop_windows-ent-cpc_win11-23h2-ent-cpc-m365",
ImageType = CloudPcProvisioningPolicyImageType.Gallery,
OsLocale = "en-US",
},
NetworkConfiguration = new CloudPcMicrosoftHostedNetworkConfiguration
{
OdataType = "#microsoft.graph.cloudPcMicrosoftHostedNetworkConfiguration",
GeographicLocationType = CloudPcGeographicLocationType.UsWest,
RegionGroups = new List<CloudPcRegionGroupConfiguration>
{
new CloudPcRegionGroupConfiguration
{
RegionGroup = CloudPcRegionGroup.UsWest,
Regions = new List<string>
{
"westus2",
"westus3",
},
},
},
},
BillingConfiguration = new CloudPcAgentPoolBillingConfiguration
{
BillingType = CloudPcAgentPoolBillingType.PayAsYouGo,
BillingPlanId = "00000000-0000-0000-0000-000000000001",
},
ScalingPolicy = new CloudPcAgentPoolScalingPolicy
{
MinimumCount = 2,
MaximumCount = 10,
},
Capabilities = new CloudPcAgentPoolCapabilityConfiguration
{
OdataType = "#microsoft.graph.cloudPcAgentPoolCapabilityConfiguration",
EnableSingleSignOn = true,
},
};
// To initialize your graphClient, see https://dotnet.territoriali.olinfo.it/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.DeviceManagement.VirtualEndpoint.CloudPcPools.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewCloudPcPool()
displayName := "Contoso Development Pool"
requestBody.SetDisplayName(&displayName)
cloudPcConfiguration := graphmodels.NewCloudPcConfiguration()
imageId := "microsoftwindowsdesktop_windows-ent-cpc_win11-23h2-ent-cpc-m365"
cloudPcConfiguration.SetImageId(&imageId)
imageType := graphmodels.GALLERY_CLOUDPCPROVISIONINGPOLICYIMAGETYPE
cloudPcConfiguration.SetImageType(&imageType)
osLocale := "en-US"
cloudPcConfiguration.SetOsLocale(&osLocale)
requestBody.SetCloudPcConfiguration(cloudPcConfiguration)
networkConfiguration := graphmodels.NewCloudPcMicrosoftHostedNetworkConfiguration()
geographicLocationType := graphmodels.USWEST_CLOUDPCGEOGRAPHICLOCATIONTYPE
networkConfiguration.SetGeographicLocationType(&geographicLocationType)
cloudPcRegionGroupConfiguration := graphmodels.NewCloudPcRegionGroupConfiguration()
regionGroup := graphmodels.USWEST_CLOUDPCREGIONGROUP
cloudPcRegionGroupConfiguration.SetRegionGroup(®ionGroup)
regions := []string {
"westus2",
"westus3",
}
cloudPcRegionGroupConfiguration.SetRegions(regions)
regionGroups := []graphmodels.CloudPcRegionGroupConfigurationable {
cloudPcRegionGroupConfiguration,
}
networkConfiguration.SetRegionGroups(regionGroups)
requestBody.SetNetworkConfiguration(networkConfiguration)
billingConfiguration := graphmodels.NewCloudPcAgentPoolBillingConfiguration()
billingType := graphmodels.PAYASYOUGO_CLOUDPCAGENTPOOLBILLINGTYPE
billingConfiguration.SetBillingType(&billingType)
billingPlanId := "00000000-0000-0000-0000-000000000001"
billingConfiguration.SetBillingPlanId(&billingPlanId)
requestBody.SetBillingConfiguration(billingConfiguration)
scalingPolicy := graphmodels.NewCloudPcAgentPoolScalingPolicy()
minimumCount := int32(2)
scalingPolicy.SetMinimumCount(&minimumCount)
maximumCount := int32(10)
scalingPolicy.SetMaximumCount(&maximumCount)
requestBody.SetScalingPolicy(scalingPolicy)
capabilities := graphmodels.NewCloudPcAgentPoolCapabilityConfiguration()
enableSingleSignOn := true
capabilities.SetEnableSingleSignOn(&enableSingleSignOn)
requestBody.SetCapabilities(capabilities)
// To initialize your graphClient, see https://dotnet.territoriali.olinfo.it/en-us/graph/sdks/create-client?from=snippets&tabs=go
cloudPcPools, err := graphClient.DeviceManagement().VirtualEndpoint().CloudPcPools().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
CloudPcAgentPool cloudPcPool = new CloudPcAgentPool();
cloudPcPool.setOdataType("#microsoft.graph.cloudPcAgentPool");
cloudPcPool.setDisplayName("Contoso Development Pool");
CloudPcConfiguration cloudPcConfiguration = new CloudPcConfiguration();
cloudPcConfiguration.setImageId("microsoftwindowsdesktop_windows-ent-cpc_win11-23h2-ent-cpc-m365");
cloudPcConfiguration.setImageType(CloudPcProvisioningPolicyImageType.Gallery);
cloudPcConfiguration.setOsLocale("en-US");
cloudPcPool.setCloudPcConfiguration(cloudPcConfiguration);
CloudPcMicrosoftHostedNetworkConfiguration networkConfiguration = new CloudPcMicrosoftHostedNetworkConfiguration();
networkConfiguration.setOdataType("#microsoft.graph.cloudPcMicrosoftHostedNetworkConfiguration");
networkConfiguration.setGeographicLocationType(CloudPcGeographicLocationType.UsWest);
LinkedList<CloudPcRegionGroupConfiguration> regionGroups = new LinkedList<CloudPcRegionGroupConfiguration>();
CloudPcRegionGroupConfiguration cloudPcRegionGroupConfiguration = new CloudPcRegionGroupConfiguration();
cloudPcRegionGroupConfiguration.setRegionGroup(CloudPcRegionGroup.UsWest);
LinkedList<String> regions = new LinkedList<String>();
regions.add("westus2");
regions.add("westus3");
cloudPcRegionGroupConfiguration.setRegions(regions);
regionGroups.add(cloudPcRegionGroupConfiguration);
networkConfiguration.setRegionGroups(regionGroups);
cloudPcPool.setNetworkConfiguration(networkConfiguration);
CloudPcAgentPoolBillingConfiguration billingConfiguration = new CloudPcAgentPoolBillingConfiguration();
billingConfiguration.setBillingType(CloudPcAgentPoolBillingType.PayAsYouGo);
billingConfiguration.setBillingPlanId("00000000-0000-0000-0000-000000000001");
cloudPcPool.setBillingConfiguration(billingConfiguration);
CloudPcAgentPoolScalingPolicy scalingPolicy = new CloudPcAgentPoolScalingPolicy();
scalingPolicy.setMinimumCount(2);
scalingPolicy.setMaximumCount(10);
cloudPcPool.setScalingPolicy(scalingPolicy);
CloudPcAgentPoolCapabilityConfiguration capabilities = new CloudPcAgentPoolCapabilityConfiguration();
capabilities.setOdataType("#microsoft.graph.cloudPcAgentPoolCapabilityConfiguration");
capabilities.setEnableSingleSignOn(true);
cloudPcPool.setCapabilities(capabilities);
CloudPcPool result = graphClient.deviceManagement().virtualEndpoint().cloudPcPools().post(cloudPcPool);
const options = {
authProvider,
};
const client = Client.init(options);
const cloudPcPool = {
'@odata.type':'#microsoft.graph.cloudPcAgentPool',
displayName: 'Contoso Development Pool',
cloudPcConfiguration: {
imageId: 'microsoftwindowsdesktop_windows-ent-cpc_win11-23h2-ent-cpc-m365',
imageType: 'gallery',
osLocale: 'en-US'
},
networkConfiguration: {
'@odata.type': '#microsoft.graph.cloudPcMicrosoftHostedNetworkConfiguration',
geographicLocationType: 'usWest',
regionGroups: [
{
regionGroup: 'usWest',
regions: ['westus2', 'westus3']
}
]
},
billingConfiguration: {
billingType: 'payAsYouGo',
billingPlanId: '00000000-0000-0000-0000-000000000001'
},
scalingPolicy: {
minimumCount: 2,
maximumCount: 10
},
capabilities: {
'@odata.type': '#microsoft.graph.cloudPcAgentPoolCapabilityConfiguration',
enableSingleSignOn: true
}
};
await client.api('/deviceManagement/virtualEndpoint/cloudPcPools')
.version('beta')
.post(cloudPcPool);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\CloudPcAgentPool;
use Microsoft\Graph\Beta\Generated\Models\CloudPcConfiguration;
use Microsoft\Graph\Beta\Generated\Models\CloudPcProvisioningPolicyImageType;
use Microsoft\Graph\Beta\Generated\Models\CloudPcMicrosoftHostedNetworkConfiguration;
use Microsoft\Graph\Beta\Generated\Models\CloudPcGeographicLocationType;
use Microsoft\Graph\Beta\Generated\Models\CloudPcRegionGroupConfiguration;
use Microsoft\Graph\Beta\Generated\Models\CloudPcRegionGroup;
use Microsoft\Graph\Beta\Generated\Models\CloudPcAgentPoolBillingConfiguration;
use Microsoft\Graph\Beta\Generated\Models\CloudPcAgentPoolBillingType;
use Microsoft\Graph\Beta\Generated\Models\CloudPcAgentPoolScalingPolicy;
use Microsoft\Graph\Beta\Generated\Models\CloudPcAgentPoolCapabilityConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new CloudPcAgentPool();
$requestBody->setOdataType('#microsoft.graph.cloudPcAgentPool');
$requestBody->setDisplayName('Contoso Development Pool');
$cloudPcConfiguration = new CloudPcConfiguration();
$cloudPcConfiguration->setImageId('microsoftwindowsdesktop_windows-ent-cpc_win11-23h2-ent-cpc-m365');
$cloudPcConfiguration->setImageType(new CloudPcProvisioningPolicyImageType('gallery'));
$cloudPcConfiguration->setOsLocale('en-US');
$requestBody->setCloudPcConfiguration($cloudPcConfiguration);
$networkConfiguration = new CloudPcMicrosoftHostedNetworkConfiguration();
$networkConfiguration->setOdataType('#microsoft.graph.cloudPcMicrosoftHostedNetworkConfiguration');
$networkConfiguration->setGeographicLocationType(new CloudPcGeographicLocationType('usWest'));
$regionGroupsCloudPcRegionGroupConfiguration1 = new CloudPcRegionGroupConfiguration();
$regionGroupsCloudPcRegionGroupConfiguration1->setRegionGroup(new CloudPcRegionGroup('usWest'));
$regionGroupsCloudPcRegionGroupConfiguration1->setRegions(['westus2', 'westus3', ]);
$regionGroupsArray []= $regionGroupsCloudPcRegionGroupConfiguration1;
$networkConfiguration->setRegionGroups($regionGroupsArray);
$requestBody->setNetworkConfiguration($networkConfiguration);
$billingConfiguration = new CloudPcAgentPoolBillingConfiguration();
$billingConfiguration->setBillingType(new CloudPcAgentPoolBillingType('payAsYouGo'));
$billingConfiguration->setBillingPlanId('00000000-0000-0000-0000-000000000001');
$requestBody->setBillingConfiguration($billingConfiguration);
$scalingPolicy = new CloudPcAgentPoolScalingPolicy();
$scalingPolicy->setMinimumCount(2);
$scalingPolicy->setMaximumCount(10);
$requestBody->setScalingPolicy($scalingPolicy);
$capabilities = new CloudPcAgentPoolCapabilityConfiguration();
$capabilities->setOdataType('#microsoft.graph.cloudPcAgentPoolCapabilityConfiguration');
$capabilities->setEnableSingleSignOn(true);
$requestBody->setCapabilities($capabilities);
$result = $graphServiceClient->deviceManagement()->virtualEndpoint()->cloudPcPools()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.cloud_pc_agent_pool import CloudPcAgentPool
from msgraph_beta.generated.models.cloud_pc_configuration import CloudPcConfiguration
from msgraph_beta.generated.models.cloud_pc_provisioning_policy_image_type import CloudPcProvisioningPolicyImageType
from msgraph_beta.generated.models.cloud_pc_microsoft_hosted_network_configuration import CloudPcMicrosoftHostedNetworkConfiguration
from msgraph_beta.generated.models.cloud_pc_geographic_location_type import CloudPcGeographicLocationType
from msgraph_beta.generated.models.cloud_pc_region_group_configuration import CloudPcRegionGroupConfiguration
from msgraph_beta.generated.models.cloud_pc_region_group import CloudPcRegionGroup
from msgraph_beta.generated.models.cloud_pc_agent_pool_billing_configuration import CloudPcAgentPoolBillingConfiguration
from msgraph_beta.generated.models.cloud_pc_agent_pool_billing_type import CloudPcAgentPoolBillingType
from msgraph_beta.generated.models.cloud_pc_agent_pool_scaling_policy import CloudPcAgentPoolScalingPolicy
from msgraph_beta.generated.models.cloud_pc_agent_pool_capability_configuration import CloudPcAgentPoolCapabilityConfiguration
# To initialize your graph_client, see https://dotnet.territoriali.olinfo.it/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = CloudPcAgentPool(
odata_type = "#microsoft.graph.cloudPcAgentPool",
display_name = "Contoso Development Pool",
cloud_pc_configuration = CloudPcConfiguration(
image_id = "microsoftwindowsdesktop_windows-ent-cpc_win11-23h2-ent-cpc-m365",
image_type = CloudPcProvisioningPolicyImageType.Gallery,
os_locale = "en-US",
),
network_configuration = CloudPcMicrosoftHostedNetworkConfiguration(
odata_type = "#microsoft.graph.cloudPcMicrosoftHostedNetworkConfiguration",
geographic_location_type = CloudPcGeographicLocationType.UsWest,
region_groups = [
CloudPcRegionGroupConfiguration(
region_group = CloudPcRegionGroup.UsWest,
regions = [
"westus2",
"westus3",
],
),
],
),
billing_configuration = CloudPcAgentPoolBillingConfiguration(
billing_type = CloudPcAgentPoolBillingType.PayAsYouGo,
billing_plan_id = "00000000-0000-0000-0000-000000000001",
),
scaling_policy = CloudPcAgentPoolScalingPolicy(
minimum_count = 2,
maximum_count = 10,
),
capabilities = CloudPcAgentPoolCapabilityConfiguration(
odata_type = "#microsoft.graph.cloudPcAgentPoolCapabilityConfiguration",
enable_single_sign_on = True,
),
)
result = await graph_client.device_management.virtual_endpoint.cloud_pc_pools.post(request_body)