All Products
Search
Document Center

Auto Scaling:DescribePatternTypes

Last Updated:Aug 28, 2026

Queries instance types that match specified attributes such as vSwitch ID, number of vCPUs, memory size, instance family, and maximum acceptable price.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

ess:DescribePatternTypes

list

*All Resource

*

None None

Request parameters

Parameter

Type

Required

Description

Example

RegionId

string

Yes

The region ID.

cn-hangzhou

VSwitchId

array

No

The IDs of the vSwitches.

string

No

The ID of the vSwitch.

vsw-bp14zolna43z266bq****

ZoneId

array

No

The zone IDs. If you pass vSwitch IDs to the system, this parameter does not take effect.

string

No

The zone ID.

cn-hangzhou-g

SpotStrategy

string

No

The preemption policy that you want to apply to pay-as-you-go instances. Valid values:

  • NoSpot: The instances are created as regular pay-as-you-go instances.

  • SpotWithPriceLimit: The instances are created as preemptible instances that have a user-defined maximum hourly price.

  • SpotAsPriceGo: The instances are created as preemptible instances for which the market price at the time of purchase is automatically used as the bidding price.

Default value: NoSpot.

NoSpot

Cores

integer

No

The number of vCPUs that you want to assign to the instance type.

2

Memory

number

No

The memory size that you want to assign to the instance type. Unit: GiB.

4

MaxPrice

number

No

The maximum hourly price for pay-as-you-go or preemptible instances.

2

InstanceFamilyLevel

string

No

The level of the instance family. Valid values:

  • EntryLevel: entry level

  • EnterpriseLevel: enterprise level

  • CreditEntryLevel: credit-based entry level For more information, see Burstable instance families.

EnterpriseLevel

ExcludedInstanceType

array

No

The instance types that you want to exclude. You can use wildcard characters, such as an asterisk (*), to exclude an instance type or an instance family. Examples:

  • ecs.c6.large: excludes the ecs.c6.large instance type.

  • ecs.c6.*: excludes the c6 instance family.

Note

If you want to exclude multiple instance types, separate the instance types with forward slashes (/). Example: ecs.n1.small/ecs.n1.*/*7*.

string

No

The instance type that you want to exclude. You can use wildcard characters, such as an asterisk (*), to exclude an instance type or an instance family. Examples:

  • ecs.c6.large: excludes the ecs.c6.large instance type.

  • ecs.c6.*: excludes the c6 instance family.

Note

If you want to exclude multiple instance types, separate the instance types with delimiters (/). Example: ecs.n1.small/ecs.n1.*/*7*.

ecs.c6.xlarge

Architecture

array

No

The architecture types of the instance types. Valid values:

  • X86: x86 architecture.

  • Heterogeneous: heterogeneous computing, such as GPU-accelerated or FPGA-accelerated.

  • BareMetal: ECS Bare Metal Instance.

  • Arm: Arm.

By default, all values are selected.

string

No

The architecture type of the instance type. Valid values:

  • X86: x86 architecture.

  • Heterogeneous: heterogeneous computing, such as GPU-accelerated or FPGA-accelerated.

  • BareMetal: ECS Bare Metal Instance.

  • Arm: Arm.

By default, all values are selected.

X86

BurstablePerformance

string

No

Specifies whether to include burstable instance types. Valid values:

  • Exclude: does not include burstable instance types.

  • Include: includes burstable instance types.

  • Required: includes only burstable instance types.

Default value: Include.

Include

CoresList

array

No

The number of vCPUs that you want to assign to the instance type. You can specify multiple vCPUs.

integer

No

The number of vCPUs that you want to assign to the instance type. You can specify multiple vCPUs.

2

MemoryList

array

No

The memory size that you want to assign to the instance type. Unit: GiB. You can specify multiple memory sizes.

number

No

The memory size that you want to assign to the instance type. Unit: GiB. You can specify multiple memory sizes.

4

ChannelId

integer

No

The channel ID. This parameter is not for public use.

79425074

InstanceTypeFamilies

array

No

The instance families that you want to query. You can query 1 to 10 instance families in each call.

string

No

The instance family that you want to query. You can query 1 to 10 instance families in each call.

["ecs.g6", "ecs.c6", … "ecs.r6"]

MinimumCpuCoreCount

integer

No

The minimum number of vCPUs per instance type.

2

MaximumCpuCoreCount

integer

No

The maximum number of vCPUs per instance type.

4

GpuSpecs

array

No

The GPU models.

string

No

The GPU model.

["NVIDIA V100"]

InstanceCategories

array

No

The classifications of the instance types. Valid values:

  • General-purpose: general-purpose instance type.

  • Compute-optimized: compute-optimized instance type.

  • Memory-optimized: memory-optimized instance type.

  • Big data: big data instance type.

  • Local SSDs: instance type with local SSDs.

  • High Clock Speed: instance type with high clock speeds.

  • Enhanced: enhanced instance type.

  • Shared: shared instance type.

  • Compute-optimized with GPU: GPU-accelerated compute-optimized instance type.

  • Visual Compute-optimized: visual compute-optimized instance type.

  • Heterogeneous Service: heterogeneous service instance type.

  • Compute-optimized with FPGA: FPGA-accelerated compute-optimized instance type.

  • Compute-optimized with NPU: NPU-accelerated compute-optimized instance type.

  • ECS Bare Metal: ECS Bare Metal Instance type.

  • High Performance Compute: HPC-optimized instance type.

string

No

The classification of the instance type. Valid values:

  • General-purpose: general-purpose instance type.

  • Compute-optimized: compute-optimized instance type.

  • Memory-optimized: memory-optimized instance type.

  • Big data: big data instance type.

  • Local SSDs: instance type with local SSDs.

  • High Clock Speed: instance type with high clock speeds.

  • Enhanced: enhanced instance type.

  • Shared: shared instance type.

  • Compute-optimized with GPU: GPU-accelerated compute-optimized instance type.

  • Visual Compute-optimized: visual compute-optimized instance type.

  • Heterogeneous Service: heterogeneous service instance type.

  • Compute-optimized with FPGA: FPGA-accelerated compute-optimized instance type.

  • Compute-optimized with NPU: NPU-accelerated compute-optimized instance type.

  • ECS Bare Metal: ECS Bare Metal Instance type.

  • High Performance Compute: HPC-optimized instance type.

["Compute-optimized with GPU"]

CpuArchitectures

array

No

The CPU architectures of the instance types. Valid values:

Note

You can specify 1 to 2 CPU architectures.

  • x86

  • Arm

string

No

The CPU architecture of the instance type. Valid values:

Note

You can specify 1 to 2 CPU architectures.

  • x86

  • Arm

["X86", "ARM"]

PhysicalProcessorModels

array

No

The processor models of the instance types. You can specify 1 to 10 processor models.

string

No

The processor model of the instance type. You can specify 1 to 10 processor models.

["Intel Xeon(Ice Lake) Platinum 8369B", "Intel Xeon(Skylake) Platinum 8163", … "Intel Xeon(Cascade Lake) Platinum 8269CY"]

MinimumEniQuantity

integer

No

The minimum number of elastic network interfaces (ENIs) per instance.

2

MinimumEniPrivateIpAddressQuantity

integer

No

The minimum number of IPv4 addresses per ENI.

2

MinimumEniIpv6AddressQuantity

integer

No

The minimum number of IPv6 addresses per ENI.

1

MinimumInitialCredit

integer

No

The initial vCPU credits per t5 or t6 burstable instance.

12

MinimumBaselineCredit

integer

No

The baseline vCPU computing performance (overall baseline performance of all vCPUs) per t5 or t6 burstable instance.

12

MinimumMemorySize

number

No

The minimum memory size per instance. Unit: GiB.

4

MaximumMemorySize

number

No

The maximum memory size per instance. Unit: GiB.

4

MinimumGpuAmount

integer

No

The minimum number of GPUs per instance. The value must be a positive integer.

2

MaximumGpuAmount

integer

No

The maximum number of GPUs per instance. The value must be a positive integer.

2

Response elements

Element

Type

Description

Example

object

Schema of Response

RequestId

string

The request ID.

473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

PatternTypes

array<object>

The instance types that meet the specified requirements.

object

InstanceType

string

The name of the instance type.

ecs.c7.xlarge

InstanceFamilyLevel

string

The level of the instance family.

  • EntryLevel: entry level (shared instance types) Instance types of this level are the most cost-effective but may not provide stable computing performance. Instance types of this level are suitable for business scenarios in which the CPU utilization is low. For more information, see Shared instance families.

  • EnterpriseLevel: enterprise level. Instance types of this level provide stable performance and dedicated resources and are suitable for scenarios that require high stability. For more information, see Overview of instance families.

  • CreditEntryLevel: credit-based entry level (burstable instance types). CPU credits are used to ensure computing performance. Instance types of this level are suitable for scenarios in which the CPU utilization is low but may fluctuate in specific cases. For more information, see Overview of burstable instances.

EnterpriseLevel

InstanceTypeFamily

string

The instance family.

ecs.c7

Cores

integer

The number of vCPUs that are assigned to the instance type.

4

Memory

number

The memory size assigned to the instance type. Unit: GiB.

8

Examples

Success response

JSON format

{
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
  "PatternTypes": [
    {
      "InstanceType": "ecs.c7.xlarge",
      "InstanceFamilyLevel": "EnterpriseLevel",
      "InstanceTypeFamily": "ecs.c7",
      "Cores": 4,
      "Memory": 8
    }
  ]
}

Error codes

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.