Help Center/ ModelArts/ API Reference/ DevServer Management/ Creating a DevServer Instance
Updated on 2025-08-20 GMT+08:00

Creating a DevServer Instance

Function

This API is used to create a Lite Server, ECS, BMS, and supernode server.

Constraints

No constraints

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

URI

POST /v1/{project_id}/dev-servers

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Definition: Project ID

Constraints: Mandatory

Range: The value can contain 1 to 64 characters. Letters, digits, and hyphens (-) are allowed.

Default Value: N/A

Request Parameters

Table 2 Request body parameters

Parameter

Mandatory

Type

Description

admin_pass

No

String

Definition: Password used for logging in to the server. Select either admin_pass or key_pair_name. The password must:

  • Contain 8 to 26 characters.

  • Contain at least three of the following types: uppercase letters, lowercase letters, digits, and special characters (!@%-_=+[{}]:,./?).

  • Cannot be the username or the username spelled backwards.

  • Cannot contain root, administrator, or their reverse.

Constraints: admin_pass and key_pair_name cannot exist at the same time.

Range: The value must contain 8 to 26 characters and meet the preceding password rules.

Default Value: N/A

arch

No

String

Definition: Architecture type of a server flavor.

Constraints: N/A

Range:

  • X86: The CPU architecture is x86.

  • ARM: The CPU architecture is Arm.

Default Value: N/A

availability_zone

No

String

Definition: AZ where the server is located.

Constraints: N/A

Range: The value can contain 1 to 256 characters. Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed.

Default Value: N/A

charging_info

No

ChargingInfo object

Definition: Billing mode of a server.

count

No

Integer

Definition: Number of servers purchased at a time.

Constraints: N/A

Range: 1 to 100

Default Value: N/A

enterprise_project_id

No

String

Definition: Enterprise ID.

Constraints: N/A

Range: The value can contain 1 to 36 characters. Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed.

Default Value: N/A

flavor

Yes

String

Definition: Server flavor name.

Constraints: N/A

Range: The value can contain 1 to 128 characters. Only letters, digits, and periods (.) are allowed.

Default Value: N/A

image_id

Yes

String

Definition: Server image ID.

Constraints: N/A

Range: The value must be a string of 36 characters in UUID format.

Default Value: N/A

key_pair_name

No

String

Definition: Key pair name used for logging in to the server. Select either admin_pass or key_pair_name. Note that supernodes can be created only using key pairs.

Constraints: admin_pass and key_pair_name cannot exist at the same time.

Range: The value can contain 1 to 64 characters. Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed.

Default Value: N/A

name

Yes

String

Definition: Server name.

Constraints: N/A

Range: The value can contain 1 to 64 characters. Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed.

Default Value: N/A

network

Yes

ServerNetwork object

Definition: Server network information.

Constraints: N/A

Range: See #/definitions/ServerNetwork.

Default Value: N/A

root_volume

No

EvsVolume object

Definition: System disk information of a server.

Constraints: N/A

Range: See #/definitions/EvsVolume.

Default Value: N/A

data_volume

No

ServerDataVolume object

Definition: Data disk information of a server.

Constraints: N/A

Range: See #/definitions/ServerDataVolume.

Default Value: N/A

server_type

No

String

Definition: Server type.

Constraints: N/A

Range:

  • BMS

  • ECS

  • HPS: supernode server

Default Value: N/A

userdata

No

String

Definition: Data defined by users during server creation.

Constraints: N/A

Range: 0 to 2,147,483,647 characters

Default Value: N/A

hps_cluster_id

No

String

Definition: Network information of the supernode cluster. This parameter is required only when a supernode is created.

Constraints: This parameter is used only for creating HPS servers.

Range: The value must be a string of 36 characters in UUID format.

Default Value: N/A

Table 3 ChargingInfo

Parameter

Mandatory

Type

Description

charging_mode

Yes

String

Definition: Payment type, which is the billing mode of the server.

Constraints: N/A

Range:

  • COMMON: Both yearly/monthly and pay-per-use are supported.

  • POST_PAID: postpaid charging mode

  • PRE_PAID: prepaid charging mode

Default Value: N/A

is_auto_pay

No

Boolean

Definition: Specifies whether to enable automatic payment.

Constraints: N/A

Range:

  • true: The order will be automatically paid.

  • false: The order will not be automatically paid.

Default Value: N/A

is_auto_renew

No

Boolean

Definition: Specifies whether to enable auto renewal.

Constraints: N/A

Range:

  • true: Auto renewal is enabled.

  • false: Auto renewal is not enabled.

Default Value: N/A

period_num

Yes

Integer

Definition: Number of subscription periods.

Constraints: N/A

Range: 1 to 11

Default Value: N/A

period_type

Yes

String

Definition: Subscription period type, which defines the time unit for the subscription period.

Constraints: N/A

Range:

  • ABSOLUTE

  • DAY

  • HOUR

  • MONTH

  • WEEK

  • YEAR

Default Value: N/A

Table 4 ServerNetwork

Parameter

Mandatory

Type

Description

ipv6_enable

No

Boolean

Definition: Whether IPv6 is enabled when a server is created.

Constraints: N/A

Range:

  • true: IPv6 is enabled.

  • false: IPv6 is disabled.

Default Value: N/A

roce_id

No

String

Definition: RoCE network ID of the server.

Constraints: N/A

Range: The value must be a string in UUID format.

Default Value: N/A

security_group_id

Yes

String

Definition: ID of the security group to which the server belongs.

Constraints: N/A

Range: The value must be a string in UUID format.

Default Value: N/A

subnet_id

Yes

String

Definition: ID of the subnet where the server is located.

Constraints: N/A

Range: The value must be a string in UUID format.

Default Value: N/A

vpc_id

Yes

String

Definition: ID of the VPC where the server is located.

Constraints: N/A

Range: The value must be a string in UUID format.

Default Value: N/A

Table 5 EvsVolume

Parameter

Mandatory

Type

Description

size

No

Integer

Definition: System disk size, which is the storage space allocated to the system disk.

Constraints: N/A

Range: 100 to 1,024 GB

Default Value: N/A

type

No

String

Definition: System disk type, which indicates the storage type of the system disk.

Constraints: N/A

Range:

  • ESSD: extreme SSD

  • GPSSD: General-purpose SSD

  • SAS: high I/O EVS disk

  • SATA: common I/O EVS disk

  • SSD: ultra-high I/O EVS disk

Default Value: N/A

Table 6 ServerDataVolume

Parameter

Mandatory

Type

Description

size

Yes

Integer

Definition: Data disk size. Storage space allocated to a data disk.

Constraints: N/A

Range: 100 to 32,768 GB

Default Value: N/A

type

Yes

String

Definition: System disk type, which indicates the storage type of the data disk.

Constraints: N/A

Range:

  • ESSD: extreme SSD

  • GPSSD: General-purpose SSD

  • SAS: high I/O EVS disk

  • SATA: common I/O EVS disk

  • SSD: ultra-high I/O EVS disk

Default Value: N/A

count

Yes

Integer

Definition: Number of data disks. Number of data disks allocated to an instance.

Constraints: N/A

Range: 1 to 8

Default Value: N/A

Response Parameters

Status code: 200

Table 7 Response body parameters

Parameter

Type

Description

create_at

Long

Definition: Creation time.

Range: N/A

update_at

Long

Definition: Update time.

Range: N/A

charging_mode

String

Definition: Billing mode.

Range:

  • COMMON: both yearly/monthly and pay-per-use

  • POST_PAID: pay-per-use

  • PRE_PAID: yearly/monthly

cloud_server

CloudServer object

Definition: Cloud service information.

endpoints_response

Array of Endpoints objects

Definition: Private IP address of the instance.

flavor

String

Definition: Instance flavor name.

Range: ^.{1,128}$

id

String

Definition: Instance ID.

Range: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

key_pair_name

String

Definition: Key pair name.

Range: ^[-_.a-zA-Z0-9]{1,64}$

name

String

Definition: Instance name.

Range: ^[-_.a-zA-Z0-9]{1,64}$

order_id

String

Definition: Order ID.

Range: ^[a-zA-Z0-9]{1,64}$

server_image_response

ServerImageResponse object

Definition: Instance image information.

Range: N/A

status

String

Definition: Instance status. Current running status of the instance, which is used to monitor the lifecycle and health status of the instance.

Range:

  • CREATE_FAILED: Creating the instance failed.

  • CREATING: The instance is being created.

  • DELETED: The instance has been deleted.

  • DELETE_FAILED: Deleting the instance failed.

  • DELETING: The instance is being deleted.

  • ERROR: An error occurred.

  • RUNNING: The instance is running.

  • STARTING: The instance is being started.

  • START_FAILED: Starting the instance failed.

  • STOPPED: The instance has been stopped.

  • STOPPING: The instance is being stopped.

  • STOP_FAILED: Stopping the instance failed.

  • REBOOTING: The instance is being restarted.

  • REBOOT_FAILED: Restarting the instance failed.

  • CHANGINGOS: The OS is being changed.

  • CHANGINGOS_FAILED: Changing the OS failed.

  • REINSTALLINGOS: The OS is being reinstalled.

  • REINSTALLINGOS_FAILED: Reinstalling the OS failed.

vpc_id

String

Definition: ID of the VPC where the instance is located.

Range: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

endpoints

Array of EndpointsRes objects

Definition: Private IP address of the server.

image

ServerImageResponse object

Definition: Server image information.

category

String

Definition: Server type.

Range:

  • HPS: supernode server

  • SPOD: full-cabinet server

  • SERVER: single server

server_hps

ServerHpsInfo object

Definition: Information about the supernode to which the server belongs.

subnet_id

String

Parameter description: ID of the subnet where the instance is located.

** Value range: **:^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$.

Table 8 CloudServer

Parameter

Type

Description

id

String

Definition: Server resource ID or supernode's child node ID.

Range: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

type

String

Definition: DevServer server type.

Range:

  • BMS: BMS

  • ECS: ECS

  • HPS: supernode server

hps_id

String

Definition: Server resource ID of the supernode's child node.

Range: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

hps_ecs_id

String

Definition: Server resource ID of the supernode's child node.

Range: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

Table 9 Endpoints

Parameter

Type

Description

allowed_access_ips

Array of strings

Definition: Whitelisted public IP addresses that are allowed to access notebook instances through SSH. By default, all IP addresses can access the notebook instances. If IP addresses are specified, only the clients with the specified IP addresses can access the notebook instances.

Constraints: N/A

Range: 0 to 1,024 IP addresses

Default Value: N/A

dev_service

String

Definition: Supported services.

Range:

  • NOTEBOOK: You can access notebook instances using HTTPS.

  • SSH: You can remotely access notebook instances through SSH.

extensions

Map<String,String>

Definition: App-specific URL for accessing the remote development mode of the app. It includes extended configurations of the application.

Constraints: N/A

Range: N/A

Default Value: N/A

ssh_keys

Array of strings

Definition: List of SSH key pairs. You can set multiple key pairs to access an SSH instance at the same time.

Constraints: N/A

Range: 0 to 1,024 key pairs

Default Value: N/A

Table 10 EndpointsRes

Parameter

Type

Description

allowed_access_ips

Array of strings

Definition: Whitelisted public IP addresses that are allowed to access notebook instances through SSH. By default, all public IP addresses can access the notebook instances. If IP addresses are specified, only the clients with the specified IP addresses can access the notebook instances.

dev_service

String

Definition: Method for accessing the notebook instance.

Range:

  • NOTEBOOK: You can access notebook instances using HTTPS.

  • SSH: You can remotely access notebook instances through SSH.

ssh_keys

Array of strings

Definition: List of SSH key pairs. You can set multiple key pairs to access an SSH instance at the same time.

service

String

Definition: Method for accessing the notebook instance.

Range:

  • NOTEBOOK: You can access notebook instances using HTTPS.

  • SSH: You can remotely access notebook instances through SSH.

uri

String

Definition: Private IP address of the instance.

Range: N/A

Table 11 ServerImageResponse

Parameter

Type

Description

arch

String

Definition: Architecture type of a server image.

Range:

  • ARM

  • X86

image_id

String

Definition: Server image ID.

Range: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

name

String

Definition: Server image name.

Constraints: N/A

Range: 1 to 256 characters

Default Value: N/A

server_type

String

Definition: Server type.

Range:

  • BMS: BMS

  • ECS: ECS

  • HPS: supernode server

status

String

Definition: Server image status.

Range:

  • ACTIVE

  • INACTIVE

Table 12 ServerHpsInfo

Parameter

Type

Description

id

String

Definition: ID of the DevServer supernode instance.

Range: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

name

String

Definition: Name of the DevServer supernode.

Range: ^[-_.a-zA-Z0-9]{1,64}$

Example Requests

POST https://{endpoint}/v1/{project_id}/dev-servers

{
  "name" : "EI-evs-1107",
  "flavor" : "Si2.large.4",
  "image_id" : "c90fb553-2cdb-4b81-b56a-ef68812c6cf7",
  "network" : {
    "security_group_id" : "150a2c76-1334-45f6-b28f-419f9b1d1742",
    "subnet_id" : "38cf274a-98f9-4f6f-b622-5ed0e4a3db54",
    "vpc_id" : "05982b48-a70f-43a1-a2b0-1fe36a236172"
  },
  "admin_pass" : "@DevServer"
}

Example Responses

Status code: 200

OK

{
  "charging_mode" : "PRE_PAID",
  "cloud_server" : {
    "type" : "ECS"
  },
  "create_at" : 1699348284990,
  "flavor" : "Si2.large.4",
  "id" : "62383738-e52a-450a-9f84-f9e705402be8",
  "image" : {
    "arch" : "X86",
    "image_id" : "c90fb553-2cdb-4b81-b56a-ef68812c6cf7",
    "name" : "Ubuntu18.04_x86_64_CPU",
    "server_type" : "ECS"
  },
  "name" : "EI-evs-1107",
  "status" : "CREATING",
  "update_at" : 1699348285077
}

Status Codes

Status Code

Description

200

OK

Error Codes

See Error Codes.