Gets the list of Microsoft.Compute SKUs available for your Subscription.
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/skus?api-version=2021-07-01
With optional parameters:
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/skus?api-version=2021-07-01&$filter={$filter}&includeExtendedLocations={includeExtendedLocations}
URI Parameters
Name |
In |
Required |
Type |
Description |
subscriptionId
|
path |
True
|
string
|
Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
|
api-version
|
query |
True
|
string
|
Client Api Version.
|
$filter
|
query |
|
string
|
The filter to apply on the operation. Only location filter is supported currently.
|
includeExtendedLocations
|
query |
|
string
|
To Include Extended Locations information or not in the response.
|
Responses
Security
azure_auth
Azure Active Directory OAuth2 Flow
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name |
Description |
user_impersonation
|
impersonate your user account
|
Examples
Lists all available Resource SKUs
Sample request
GET https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.Compute/skus?api-version=2021-07-01
/**
* Samples for ResourceSkus List.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/
* ListAvailableResourceSkus.json
*/
/**
* Sample code: Lists all available Resource SKUs.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void listsAllAvailableResourceSKUs(com.azure.resourcemanager.AzureResourceManager azure) {
azure.virtualMachines().manager().serviceClient().getResourceSkus().list(null, null,
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armcompute_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/069a65e8a6d1a6c0c58d9a9d97610b7103b6e8a5/specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkus.json
func ExampleResourceSKUsClient_NewListPager_listsAllAvailableResourceSkUs() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armcompute.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
pager := clientFactory.NewResourceSKUsClient().NewListPager(&armcompute.ResourceSKUsClientListOptions{Filter: nil,
IncludeExtendedLocations: nil,
})
for pager.More() {
page, err := pager.NextPage(ctx)
if err != nil {
log.Fatalf("failed to advance page: %v", err)
}
for _, v := range page.Value {
// You could use page here. We use blank identifier for just demo purposes.
_ = v
}
// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// page.ResourceSKUsResult = armcompute.ResourceSKUsResult{
// Value: []*armcompute.ResourceSKU{
// {
// Name: to.Ptr("Standard_A0"),
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("MaxResourceVolumeMB"),
// Value: to.Ptr("20480"),
// },
// {
// Name: to.Ptr("OSVhdSizeMB"),
// Value: to.Ptr("1047552"),
// },
// {
// Name: to.Ptr("vCPUs"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("HyperVGenerations"),
// Value: to.Ptr("V1"),
// },
// {
// Name: to.Ptr("MemoryGB"),
// Value: to.Ptr("0.75"),
// },
// {
// Name: to.Ptr("MaxDataDiskCount"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("LowPriorityCapable"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("PremiumIO"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("vCPUsAvailable"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("ACUs"),
// Value: to.Ptr("50"),
// },
// {
// Name: to.Ptr("vCPUsPerCore"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("EphemeralOSDiskSupported"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("AcceleratedNetworkingEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("RdmaEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("MaxNetworkInterfaces"),
// Value: to.Ptr("2"),
// }},
// Family: to.Ptr("standardA0_A7Family"),
// LocationInfo: []*armcompute.ResourceSKULocationInfo{
// {
// Location: to.Ptr("westus"),
// ZoneDetails: []*armcompute.ResourceSKUZoneDetails{
// {
// Name: []*string{
// to.Ptr("2")},
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("UltraSSDAvailable"),
// Value: to.Ptr("True"),
// }},
// }},
// Zones: []*string{
// to.Ptr("2"),
// to.Ptr("1")},
// }},
// Locations: []*string{
// to.Ptr("westus")},
// ResourceType: to.Ptr("virtualMachines"),
// Size: to.Ptr("A0"),
// Tier: to.Ptr("Standard"),
// },
// {
// Name: to.Ptr("Standard_A1"),
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("MaxResourceVolumeMB"),
// Value: to.Ptr("71680"),
// },
// {
// Name: to.Ptr("OSVhdSizeMB"),
// Value: to.Ptr("1047552"),
// },
// {
// Name: to.Ptr("vCPUs"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("HyperVGenerations"),
// Value: to.Ptr("V1"),
// },
// {
// Name: to.Ptr("MemoryGB"),
// Value: to.Ptr("1.75"),
// },
// {
// Name: to.Ptr("MaxDataDiskCount"),
// Value: to.Ptr("2"),
// },
// {
// Name: to.Ptr("LowPriorityCapable"),
// Value: to.Ptr("True"),
// },
// {
// Name: to.Ptr("PremiumIO"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("vCPUsAvailable"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("ACUs"),
// Value: to.Ptr("100"),
// },
// {
// Name: to.Ptr("vCPUsPerCore"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("EphemeralOSDiskSupported"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("AcceleratedNetworkingEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("RdmaEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("MaxNetworkInterfaces"),
// Value: to.Ptr("2"),
// }},
// Family: to.Ptr("standardA0_A7Family"),
// LocationInfo: []*armcompute.ResourceSKULocationInfo{
// {
// Location: to.Ptr("westus"),
// Zones: []*string{
// to.Ptr("1"),
// to.Ptr("2"),
// to.Ptr("3")},
// }},
// Locations: []*string{
// to.Ptr("westus")},
// ResourceType: to.Ptr("virtualMachines"),
// Size: to.Ptr("A1"),
// Tier: to.Ptr("Standard"),
// }},
// }
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ComputeManagementClient } = require("@azure/arm-compute");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Gets the list of Microsoft.Compute SKUs available for your Subscription.
*
* @summary Gets the list of Microsoft.Compute SKUs available for your Subscription.
* x-ms-original-file: specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkus.json
*/
async function listsAllAvailableResourceSkUs() {
const subscriptionId = process.env["COMPUTE_SUBSCRIPTION_ID"] || "{subscription-id}";
const credential = new DefaultAzureCredential();
const client = new ComputeManagementClient(credential, subscriptionId);
const resArray = new Array();
for await (let item of client.resourceSkus.list()) {
resArray.push(item);
}
console.log(resArray);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Compute.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Compute;
// Generated from example definition: specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkus.json
// this example is just showing the usage of "ResourceSkus_List" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this SubscriptionResource created on azure
// for more information of creating SubscriptionResource, please refer to the document of SubscriptionResource
string subscriptionId = "{subscription-id}";
ResourceIdentifier subscriptionResourceId = SubscriptionResource.CreateResourceIdentifier(subscriptionId);
SubscriptionResource subscriptionResource = client.GetSubscriptionResource(subscriptionResourceId);
// invoke the operation and iterate over the result
await foreach (ComputeResourceSku item in subscriptionResource.GetComputeResourceSkusAsync())
{
Console.WriteLine($"Succeeded: {item}");
}
Console.WriteLine("Succeeded");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
az vm list-skus
Click here to learn more about the Azure CLI command.
Sample response
{
"value": [
{
"resourceType": "virtualMachines",
"locations": [
"westus"
],
"capabilities": [
{
"name": "MaxResourceVolumeMB",
"value": "20480"
},
{
"name": "OSVhdSizeMB",
"value": "1047552"
},
{
"name": "vCPUs",
"value": "1"
},
{
"name": "HyperVGenerations",
"value": "V1"
},
{
"name": "MemoryGB",
"value": "0.75"
},
{
"name": "MaxDataDiskCount",
"value": "1"
},
{
"name": "LowPriorityCapable",
"value": "False"
},
{
"name": "PremiumIO",
"value": "False"
},
{
"name": "vCPUsAvailable",
"value": "1"
},
{
"name": "ACUs",
"value": "50"
},
{
"name": "vCPUsPerCore",
"value": "1"
},
{
"name": "EphemeralOSDiskSupported",
"value": "False"
},
{
"name": "AcceleratedNetworkingEnabled",
"value": "False"
},
{
"name": "RdmaEnabled",
"value": "False"
},
{
"name": "MaxNetworkInterfaces",
"value": "2"
}
],
"locationInfo": [
{
"location": "westus",
"zones": [
"2",
"1"
],
"zoneDetails": [
{
"name": [
"2"
],
"capabilities": [
{
"name": "UltraSSDAvailable",
"value": "True"
}
]
}
]
}
],
"name": "Standard_A0",
"tier": "Standard",
"size": "A0",
"family": "standardA0_A7Family"
},
{
"resourceType": "virtualMachines",
"locations": [
"westus"
],
"capabilities": [
{
"name": "MaxResourceVolumeMB",
"value": "71680"
},
{
"name": "OSVhdSizeMB",
"value": "1047552"
},
{
"name": "vCPUs",
"value": "1"
},
{
"name": "HyperVGenerations",
"value": "V1"
},
{
"name": "MemoryGB",
"value": "1.75"
},
{
"name": "MaxDataDiskCount",
"value": "2"
},
{
"name": "LowPriorityCapable",
"value": "True"
},
{
"name": "PremiumIO",
"value": "False"
},
{
"name": "vCPUsAvailable",
"value": "1"
},
{
"name": "ACUs",
"value": "100"
},
{
"name": "vCPUsPerCore",
"value": "1"
},
{
"name": "EphemeralOSDiskSupported",
"value": "False"
},
{
"name": "AcceleratedNetworkingEnabled",
"value": "False"
},
{
"name": "RdmaEnabled",
"value": "False"
},
{
"name": "MaxNetworkInterfaces",
"value": "2"
}
],
"locationInfo": [
{
"location": "westus",
"zones": [
"1",
"2",
"3"
]
}
],
"name": "Standard_A1",
"tier": "Standard",
"size": "A1",
"family": "standardA0_A7Family"
}
],
"nextLink": null
}
Lists all available Resource SKUs for the specified region
Sample request
GET https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.Compute/skus?api-version=2021-07-01&$filter=location eq 'westus'
/**
* Samples for ResourceSkus List.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/
* ListAvailableResourceSkusForARegion.json
*/
/**
* Sample code: Lists all available Resource SKUs for the specified region.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
listsAllAvailableResourceSKUsForTheSpecifiedRegion(com.azure.resourcemanager.AzureResourceManager azure) {
azure.virtualMachines().manager().serviceClient().getResourceSkus().list("location eq 'westus'", null,
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armcompute_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/069a65e8a6d1a6c0c58d9a9d97610b7103b6e8a5/specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkusForARegion.json
func ExampleResourceSKUsClient_NewListPager_listsAllAvailableResourceSkUsForTheSpecifiedRegion() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armcompute.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
pager := clientFactory.NewResourceSKUsClient().NewListPager(&armcompute.ResourceSKUsClientListOptions{Filter: to.Ptr("location eq 'westus'"),
IncludeExtendedLocations: nil,
})
for pager.More() {
page, err := pager.NextPage(ctx)
if err != nil {
log.Fatalf("failed to advance page: %v", err)
}
for _, v := range page.Value {
// You could use page here. We use blank identifier for just demo purposes.
_ = v
}
// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// page.ResourceSKUsResult = armcompute.ResourceSKUsResult{
// Value: []*armcompute.ResourceSKU{
// {
// Name: to.Ptr("Standard_A0"),
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("MaxResourceVolumeMB"),
// Value: to.Ptr("20480"),
// },
// {
// Name: to.Ptr("OSVhdSizeMB"),
// Value: to.Ptr("1047552"),
// },
// {
// Name: to.Ptr("vCPUs"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("HyperVGenerations"),
// Value: to.Ptr("V1"),
// },
// {
// Name: to.Ptr("MemoryGB"),
// Value: to.Ptr("0.75"),
// },
// {
// Name: to.Ptr("MaxDataDiskCount"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("LowPriorityCapable"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("PremiumIO"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("vCPUsAvailable"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("ACUs"),
// Value: to.Ptr("50"),
// },
// {
// Name: to.Ptr("vCPUsPerCore"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("EphemeralOSDiskSupported"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("AcceleratedNetworkingEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("RdmaEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("MaxNetworkInterfaces"),
// Value: to.Ptr("2"),
// }},
// Family: to.Ptr("standardA0_A7Family"),
// LocationInfo: []*armcompute.ResourceSKULocationInfo{
// {
// Location: to.Ptr("westus"),
// ZoneDetails: []*armcompute.ResourceSKUZoneDetails{
// {
// Name: []*string{
// to.Ptr("2")},
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("UltraSSDAvailable"),
// Value: to.Ptr("True"),
// }},
// }},
// Zones: []*string{
// to.Ptr("2"),
// to.Ptr("1")},
// }},
// Locations: []*string{
// to.Ptr("westus")},
// ResourceType: to.Ptr("virtualMachines"),
// Size: to.Ptr("A0"),
// Tier: to.Ptr("Standard"),
// },
// {
// Name: to.Ptr("Standard_A1"),
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("MaxResourceVolumeMB"),
// Value: to.Ptr("71680"),
// },
// {
// Name: to.Ptr("OSVhdSizeMB"),
// Value: to.Ptr("1047552"),
// },
// {
// Name: to.Ptr("vCPUs"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("HyperVGenerations"),
// Value: to.Ptr("V1"),
// },
// {
// Name: to.Ptr("MemoryGB"),
// Value: to.Ptr("1.75"),
// },
// {
// Name: to.Ptr("MaxDataDiskCount"),
// Value: to.Ptr("2"),
// },
// {
// Name: to.Ptr("LowPriorityCapable"),
// Value: to.Ptr("True"),
// },
// {
// Name: to.Ptr("PremiumIO"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("vCPUsAvailable"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("ACUs"),
// Value: to.Ptr("100"),
// },
// {
// Name: to.Ptr("vCPUsPerCore"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("EphemeralOSDiskSupported"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("AcceleratedNetworkingEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("RdmaEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("MaxNetworkInterfaces"),
// Value: to.Ptr("2"),
// }},
// Family: to.Ptr("standardA0_A7Family"),
// LocationInfo: []*armcompute.ResourceSKULocationInfo{
// {
// Location: to.Ptr("westus"),
// Zones: []*string{
// to.Ptr("1"),
// to.Ptr("2"),
// to.Ptr("3")},
// }},
// Locations: []*string{
// to.Ptr("westus")},
// ResourceType: to.Ptr("virtualMachines"),
// Size: to.Ptr("A1"),
// Tier: to.Ptr("Standard"),
// }},
// }
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ComputeManagementClient } = require("@azure/arm-compute");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Gets the list of Microsoft.Compute SKUs available for your Subscription.
*
* @summary Gets the list of Microsoft.Compute SKUs available for your Subscription.
* x-ms-original-file: specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkusForARegion.json
*/
async function listsAllAvailableResourceSkUsForTheSpecifiedRegion() {
const subscriptionId = process.env["COMPUTE_SUBSCRIPTION_ID"] || "{subscription-id}";
const filter = "location eq 'westus'";
const options = { filter };
const credential = new DefaultAzureCredential();
const client = new ComputeManagementClient(credential, subscriptionId);
const resArray = new Array();
for await (let item of client.resourceSkus.list(options)) {
resArray.push(item);
}
console.log(resArray);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Compute.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Compute;
// Generated from example definition: specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkusForARegion.json
// this example is just showing the usage of "ResourceSkus_List" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this SubscriptionResource created on azure
// for more information of creating SubscriptionResource, please refer to the document of SubscriptionResource
string subscriptionId = "{subscription-id}";
ResourceIdentifier subscriptionResourceId = SubscriptionResource.CreateResourceIdentifier(subscriptionId);
SubscriptionResource subscriptionResource = client.GetSubscriptionResource(subscriptionResourceId);
// invoke the operation and iterate over the result
string filter = "location eq 'westus'";
await foreach (ComputeResourceSku item in subscriptionResource.GetComputeResourceSkusAsync(filter: filter))
{
Console.WriteLine($"Succeeded: {item}");
}
Console.WriteLine("Succeeded");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
az vm list-skus -l westus
Click here to learn more about the Azure CLI command.
Sample response
{
"value": [
{
"resourceType": "virtualMachines",
"locations": [
"westus"
],
"capabilities": [
{
"name": "MaxResourceVolumeMB",
"value": "20480"
},
{
"name": "OSVhdSizeMB",
"value": "1047552"
},
{
"name": "vCPUs",
"value": "1"
},
{
"name": "HyperVGenerations",
"value": "V1"
},
{
"name": "MemoryGB",
"value": "0.75"
},
{
"name": "MaxDataDiskCount",
"value": "1"
},
{
"name": "LowPriorityCapable",
"value": "False"
},
{
"name": "PremiumIO",
"value": "False"
},
{
"name": "vCPUsAvailable",
"value": "1"
},
{
"name": "ACUs",
"value": "50"
},
{
"name": "vCPUsPerCore",
"value": "1"
},
{
"name": "EphemeralOSDiskSupported",
"value": "False"
},
{
"name": "AcceleratedNetworkingEnabled",
"value": "False"
},
{
"name": "RdmaEnabled",
"value": "False"
},
{
"name": "MaxNetworkInterfaces",
"value": "2"
}
],
"locationInfo": [
{
"location": "westus",
"zones": [
"2",
"1"
],
"zoneDetails": [
{
"name": [
"2"
],
"capabilities": [
{
"name": "UltraSSDAvailable",
"value": "True"
}
]
}
]
}
],
"name": "Standard_A0",
"tier": "Standard",
"size": "A0",
"family": "standardA0_A7Family"
},
{
"resourceType": "virtualMachines",
"locations": [
"westus"
],
"capabilities": [
{
"name": "MaxResourceVolumeMB",
"value": "71680"
},
{
"name": "OSVhdSizeMB",
"value": "1047552"
},
{
"name": "vCPUs",
"value": "1"
},
{
"name": "HyperVGenerations",
"value": "V1"
},
{
"name": "MemoryGB",
"value": "1.75"
},
{
"name": "MaxDataDiskCount",
"value": "2"
},
{
"name": "LowPriorityCapable",
"value": "True"
},
{
"name": "PremiumIO",
"value": "False"
},
{
"name": "vCPUsAvailable",
"value": "1"
},
{
"name": "ACUs",
"value": "100"
},
{
"name": "vCPUsPerCore",
"value": "1"
},
{
"name": "EphemeralOSDiskSupported",
"value": "False"
},
{
"name": "AcceleratedNetworkingEnabled",
"value": "False"
},
{
"name": "RdmaEnabled",
"value": "False"
},
{
"name": "MaxNetworkInterfaces",
"value": "2"
}
],
"locationInfo": [
{
"location": "westus",
"zones": [
"1",
"2",
"3"
]
}
],
"name": "Standard_A1",
"tier": "Standard",
"size": "A1",
"family": "standardA0_A7Family"
}
],
"nextLink": null
}
Sample request
GET https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.Compute/skus?api-version=2021-07-01&includeExtendedLocations=true
/**
* Samples for ResourceSkus List.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/
* ListAvailableResourceSkusWithExtendedLocations.json
*/
/**
* Sample code: Lists all available Resource SKUs with Extended Location information.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void listsAllAvailableResourceSKUsWithExtendedLocationInformation(
com.azure.resourcemanager.AzureResourceManager azure) {
azure.virtualMachines().manager().serviceClient().getResourceSkus().list(null, "true",
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armcompute_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v6"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/069a65e8a6d1a6c0c58d9a9d97610b7103b6e8a5/specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkusWithExtendedLocations.json
func ExampleResourceSKUsClient_NewListPager_listsAllAvailableResourceSkUsWithExtendedLocationInformation() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armcompute.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
pager := clientFactory.NewResourceSKUsClient().NewListPager(&armcompute.ResourceSKUsClientListOptions{Filter: nil,
IncludeExtendedLocations: to.Ptr("true"),
})
for pager.More() {
page, err := pager.NextPage(ctx)
if err != nil {
log.Fatalf("failed to advance page: %v", err)
}
for _, v := range page.Value {
// You could use page here. We use blank identifier for just demo purposes.
_ = v
}
// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// page.ResourceSKUsResult = armcompute.ResourceSKUsResult{
// Value: []*armcompute.ResourceSKU{
// {
// Name: to.Ptr("Standard_A0"),
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("MaxResourceVolumeMB"),
// Value: to.Ptr("20480"),
// },
// {
// Name: to.Ptr("OSVhdSizeMB"),
// Value: to.Ptr("1047552"),
// },
// {
// Name: to.Ptr("vCPUs"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("HyperVGenerations"),
// Value: to.Ptr("V1"),
// },
// {
// Name: to.Ptr("MemoryGB"),
// Value: to.Ptr("0.75"),
// },
// {
// Name: to.Ptr("MaxDataDiskCount"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("LowPriorityCapable"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("PremiumIO"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("vCPUsAvailable"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("ACUs"),
// Value: to.Ptr("50"),
// },
// {
// Name: to.Ptr("vCPUsPerCore"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("EphemeralOSDiskSupported"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("AcceleratedNetworkingEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("RdmaEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("MaxNetworkInterfaces"),
// Value: to.Ptr("2"),
// }},
// Family: to.Ptr("standardA0_A7Family"),
// LocationInfo: []*armcompute.ResourceSKULocationInfo{
// {
// Location: to.Ptr("westus"),
// ZoneDetails: []*armcompute.ResourceSKUZoneDetails{
// {
// Name: []*string{
// to.Ptr("2")},
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("UltraSSDAvailable"),
// Value: to.Ptr("True"),
// }},
// }},
// Zones: []*string{
// to.Ptr("2"),
// to.Ptr("1")},
// }},
// Locations: []*string{
// to.Ptr("westus")},
// ResourceType: to.Ptr("virtualMachines"),
// Size: to.Ptr("A0"),
// Tier: to.Ptr("Standard"),
// },
// {
// Name: to.Ptr("Standard_A1"),
// Capabilities: []*armcompute.ResourceSKUCapabilities{
// {
// Name: to.Ptr("MaxResourceVolumeMB"),
// Value: to.Ptr("71680"),
// },
// {
// Name: to.Ptr("OSVhdSizeMB"),
// Value: to.Ptr("1047552"),
// },
// {
// Name: to.Ptr("vCPUs"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("HyperVGenerations"),
// Value: to.Ptr("V1"),
// },
// {
// Name: to.Ptr("MemoryGB"),
// Value: to.Ptr("1.75"),
// },
// {
// Name: to.Ptr("MaxDataDiskCount"),
// Value: to.Ptr("2"),
// },
// {
// Name: to.Ptr("LowPriorityCapable"),
// Value: to.Ptr("True"),
// },
// {
// Name: to.Ptr("PremiumIO"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("vCPUsAvailable"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("ACUs"),
// Value: to.Ptr("100"),
// },
// {
// Name: to.Ptr("vCPUsPerCore"),
// Value: to.Ptr("1"),
// },
// {
// Name: to.Ptr("EphemeralOSDiskSupported"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("AcceleratedNetworkingEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("RdmaEnabled"),
// Value: to.Ptr("False"),
// },
// {
// Name: to.Ptr("MaxNetworkInterfaces"),
// Value: to.Ptr("2"),
// }},
// Family: to.Ptr("standardA0_A7Family"),
// LocationInfo: []*armcompute.ResourceSKULocationInfo{
// {
// Location: to.Ptr("westus"),
// Zones: []*string{
// to.Ptr("1"),
// to.Ptr("2"),
// to.Ptr("3")},
// },
// {
// Type: to.Ptr(armcompute.ExtendedLocationTypeEdgeZone),
// ExtendedLocations: []*string{
// to.Ptr("Las Vegas"),
// to.Ptr("Seattle"),
// to.Ptr("Portland")},
// Location: to.Ptr("westus"),
// }},
// Locations: []*string{
// to.Ptr("westus")},
// ResourceType: to.Ptr("virtualMachines"),
// Size: to.Ptr("A1"),
// Tier: to.Ptr("Standard"),
// }},
// }
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { ComputeManagementClient } = require("@azure/arm-compute");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to Gets the list of Microsoft.Compute SKUs available for your Subscription.
*
* @summary Gets the list of Microsoft.Compute SKUs available for your Subscription.
* x-ms-original-file: specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkusWithExtendedLocations.json
*/
async function listsAllAvailableResourceSkUsWithExtendedLocationInformation() {
const subscriptionId = process.env["COMPUTE_SUBSCRIPTION_ID"] || "{subscription-id}";
const includeExtendedLocations = "true";
const options = { includeExtendedLocations };
const credential = new DefaultAzureCredential();
const client = new ComputeManagementClient(credential, subscriptionId);
const resArray = new Array();
for await (let item of client.resourceSkus.list(options)) {
resArray.push(item);
}
console.log(resArray);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Compute.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Compute;
// Generated from example definition: specification/compute/resource-manager/Microsoft.Compute/Skus/stable/2021-07-01/examples/skus/ListAvailableResourceSkusWithExtendedLocations.json
// this example is just showing the usage of "ResourceSkus_List" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this SubscriptionResource created on azure
// for more information of creating SubscriptionResource, please refer to the document of SubscriptionResource
string subscriptionId = "{subscription-id}";
ResourceIdentifier subscriptionResourceId = SubscriptionResource.CreateResourceIdentifier(subscriptionId);
SubscriptionResource subscriptionResource = client.GetSubscriptionResource(subscriptionResourceId);
// invoke the operation and iterate over the result
string includeExtendedLocations = "true";
await foreach (ComputeResourceSku item in subscriptionResource.GetComputeResourceSkusAsync(includeExtendedLocations: includeExtendedLocations))
{
Console.WriteLine($"Succeeded: {item}");
}
Console.WriteLine("Succeeded");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample response
{
"value": [
{
"resourceType": "virtualMachines",
"locations": [
"westus"
],
"capabilities": [
{
"name": "MaxResourceVolumeMB",
"value": "20480"
},
{
"name": "OSVhdSizeMB",
"value": "1047552"
},
{
"name": "vCPUs",
"value": "1"
},
{
"name": "HyperVGenerations",
"value": "V1"
},
{
"name": "MemoryGB",
"value": "0.75"
},
{
"name": "MaxDataDiskCount",
"value": "1"
},
{
"name": "LowPriorityCapable",
"value": "False"
},
{
"name": "PremiumIO",
"value": "False"
},
{
"name": "vCPUsAvailable",
"value": "1"
},
{
"name": "ACUs",
"value": "50"
},
{
"name": "vCPUsPerCore",
"value": "1"
},
{
"name": "EphemeralOSDiskSupported",
"value": "False"
},
{
"name": "AcceleratedNetworkingEnabled",
"value": "False"
},
{
"name": "RdmaEnabled",
"value": "False"
},
{
"name": "MaxNetworkInterfaces",
"value": "2"
}
],
"locationInfo": [
{
"location": "westus",
"zones": [
"2",
"1"
],
"zoneDetails": [
{
"name": [
"2"
],
"capabilities": [
{
"name": "UltraSSDAvailable",
"value": "True"
}
]
}
]
}
],
"name": "Standard_A0",
"tier": "Standard",
"size": "A0",
"family": "standardA0_A7Family"
},
{
"resourceType": "virtualMachines",
"locations": [
"westus"
],
"capabilities": [
{
"name": "MaxResourceVolumeMB",
"value": "71680"
},
{
"name": "OSVhdSizeMB",
"value": "1047552"
},
{
"name": "vCPUs",
"value": "1"
},
{
"name": "HyperVGenerations",
"value": "V1"
},
{
"name": "MemoryGB",
"value": "1.75"
},
{
"name": "MaxDataDiskCount",
"value": "2"
},
{
"name": "LowPriorityCapable",
"value": "True"
},
{
"name": "PremiumIO",
"value": "False"
},
{
"name": "vCPUsAvailable",
"value": "1"
},
{
"name": "ACUs",
"value": "100"
},
{
"name": "vCPUsPerCore",
"value": "1"
},
{
"name": "EphemeralOSDiskSupported",
"value": "False"
},
{
"name": "AcceleratedNetworkingEnabled",
"value": "False"
},
{
"name": "RdmaEnabled",
"value": "False"
},
{
"name": "MaxNetworkInterfaces",
"value": "2"
}
],
"locationInfo": [
{
"location": "westus",
"zones": [
"1",
"2",
"3"
]
},
{
"location": "westus",
"extendedLocations": [
"Las Vegas",
"Seattle",
"Portland"
],
"type": "EdgeZone"
}
],
"name": "Standard_A1",
"tier": "Standard",
"size": "A1",
"family": "standardA0_A7Family"
}
],
"nextLink": null
}
Definitions
ExtendedLocationType
The type of the extended location.
Name |
Type |
Description |
EdgeZone
|
string
|
|
ResourceSku
Describes an available Compute SKU.
Name |
Type |
Description |
apiVersions
|
string[]
|
The api versions that support this SKU.
|
capabilities
|
ResourceSkuCapabilities[]
|
A name value pair to describe the capability.
|
capacity
|
ResourceSkuCapacity
|
Specifies the number of virtual machines in the scale set.
|
costs
|
ResourceSkuCosts[]
|
Metadata for retrieving price info.
|
family
|
string
|
The Family of this particular SKU.
|
kind
|
string
|
The Kind of resources that are supported in this SKU.
|
locationInfo
|
ResourceSkuLocationInfo[]
|
A list of locations and availability zones in those locations where the SKU is available.
|
locations
|
string[]
|
The set of locations that the SKU is available.
|
name
|
string
|
The name of SKU.
|
resourceType
|
string
|
The type of resource the SKU applies to.
|
restrictions
|
ResourceSkuRestrictions[]
|
The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.
|
size
|
string
|
The Size of the SKU.
|
tier
|
string
|
Specifies the tier of virtual machines in a scale set.
Possible Values:
Standard
Basic
|
ResourceSkuCapabilities
Describes The SKU capabilities object.
Name |
Type |
Description |
name
|
string
|
An invariant to describe the feature.
|
value
|
string
|
An invariant if the feature is measured by quantity.
|
ResourceSkuCapacity
Describes scaling information of a SKU.
Name |
Type |
Description |
default
|
integer
|
The default capacity.
|
maximum
|
integer
|
The maximum capacity that can be set.
|
minimum
|
integer
|
The minimum capacity.
|
scaleType
|
ResourceSkuCapacityScaleType
|
The scale type applicable to the sku.
|
ResourceSkuCapacityScaleType
The scale type applicable to the sku.
Name |
Type |
Description |
Automatic
|
string
|
|
Manual
|
string
|
|
None
|
string
|
|
ResourceSkuCosts
Describes metadata for retrieving price info.
Name |
Type |
Description |
extendedUnit
|
string
|
An invariant to show the extended unit.
|
meterID
|
string
|
Used for querying price from commerce.
|
quantity
|
integer
|
The multiplier is needed to extend the base metered cost.
|
ResourceSkuLocationInfo
Describes an available Compute SKU Location Information.
Name |
Type |
Description |
extendedLocations
|
string[]
|
The names of extended locations.
|
location
|
string
|
Location of the SKU
|
type
|
ExtendedLocationType
|
The type of the extended location.
|
zoneDetails
|
ResourceSkuZoneDetails[]
|
Details of capabilities available to a SKU in specific zones.
|
zones
|
string[]
|
List of availability zones where the SKU is supported.
|
ResourceSkuRestrictionInfo
Describes an available Compute SKU Restriction Information.
Name |
Type |
Description |
locations
|
string[]
|
Locations where the SKU is restricted
|
zones
|
string[]
|
List of availability zones where the SKU is restricted.
|
ResourceSkuRestrictions
Describes scaling information of a SKU.
ResourceSkuRestrictionsReasonCode
The reason for restriction.
Name |
Type |
Description |
NotAvailableForSubscription
|
string
|
|
QuotaId
|
string
|
|
ResourceSkuRestrictionsType
The type of restrictions.
Name |
Type |
Description |
Location
|
string
|
|
Zone
|
string
|
|
ResourceSkusResult
The List Resource Skus operation response.
Name |
Type |
Description |
nextLink
|
string
|
The URI to fetch the next page of Resource Skus. Call ListNext() with this URI to fetch the next page of Resource Skus
|
value
|
ResourceSku[]
|
The list of skus available for the subscription.
|
ResourceSkuZoneDetails
Describes The zonal capabilities of a SKU.
Name |
Type |
Description |
capabilities
|
ResourceSkuCapabilities[]
|
A list of capabilities that are available for the SKU in the specified list of zones.
|
name
|
string[]
|
The set of zones that the SKU is available in with the specified capabilities.
|