Updated on 2025-07-14 GMT+08:00

Adding a Desktop Disk

Function

Adds disks to a single desktop.

Debugging

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

URI

POST /v2/{project_id}/desktops/{desktop_id}/volumes

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID.

desktop_id

Yes

String

Desktop ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

Content-Type

No

String

MIME type of the request body.

X-Auth-Token

No

String

User token.

It can be obtained by calling the IAM API that is used to obtain a user token. The value of X-Subject-Token in the response header is the user token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

enterprise_project_id

No

String

Enterprise project ID, which is 0 by default.

volumes

Yes

Array of Volume objects

Information about the disks to be added. Each desktop can contain a maximum of 10 data disks.

Table 4 Volume

Parameter

Mandatory

Type

Description

type

Yes

String

Desktop data disk type, which must be the same as the disk type provided by the system.

  • SAS: high I/O

  • SSD: ultra-high I/O

  • GPSSD: general-purpose SSD

size

Yes

Integer

Disk capacity in GB. The system disk size ranges from 80 to 32760, and the data disk size ranges from 10 to 32760. The value must be a multiple of 10.

Response Parameters

Status code: 200

Table 5 Response body parameters

Parameter

Type

Description

job_id

String

ID of the task for adding a disk.

getJobEndpoint

String

After obtaining JobId, the Cloud Business Center (CBC) uses getJobEndpoint as the URL to call the cloud service and query the Job result.

maxProvisionTime

Integer

Maximum time needed for cloud service subscription.

minProvisionTime

Integer

Minimum time needed for cloud service subscription (minimum or average time needed).

periodicQueryTime

Integer

Periodic job query frequency. The default value is 1 minute.

Status code: 400

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error description.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Status code: 401

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error description.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Status code: 403

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error description.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Status code: 404

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error description.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Status code: 409

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error description.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Status code: 500

Table 11 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error description.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Example Requests

/v2/9565be6e740941c493b38a1f46ecae6f/desktops/3ec05f83-b8a3-4c72-857f-b33f55943320/volumes

{
  "enterprise_project_id" : "0",
  "volumes" : [ {
    "type" : "SAS",
    "size" : 80
  } ]
}

Example Responses

Status code: 200

Normal.

{
  "job_id" : "string",
  "getJobEndpoint" : "string",
  "maxProvisionTime" : 60,
  "minProvisionTime" : 3,
  "periodicQueryTime" : 1
}

Status Codes

Status Code

Description

200

Normal.

400

The request cannot be understood by the server due to malformed syntax.

401

Authentication failed.

403

No operation permissions.

404

No resources found.

409

Operation conflict.

500

An internal service error occurred. For details, see the error code description.

Error Codes

See Error Codes.