Updating an EVS Disk¶
Function¶
This API is used to update the EVS disk information.
URI¶
URI format
PUT /v3/{project_id}/volumes/{volume_id}
Parameter description
Parameter
Mandatory
Description
project_id
Yes
Specifies the project ID.
For details about how to obtain the project ID, see Obtaining a Project ID.
volume_id
Yes
Specifies the disk ID.
Request¶
Request parameters
Parameter
Type
Mandatory
Description
volume
Object
Yes
The information of the disk to be updated. For details, see Parameters in the volume field.
Parameters in the volume field
Parameter
Type
Mandatory
Description
name
String
No
The disk name. The value can contain a maximum of 255 bytes.
description
String
No
The disk description. The value can contain a maximum of 255 bytes.
metadata
Object
No
The disk metadata.
The length of the key or value in the metadata cannot exceed 255 bytes.
display_name
String
No
Also the disk name. You can specify either parameter name or display_name. If both parameters are specified, the name value is used. The value can contain a maximum of 255 bytes.
display_description
String
No
Also the disk description. You can specify either parameter description or display_description. If both parameters are specified, the description value is used. The value can contain a maximum of 255 bytes.
Example request
{ "volume": { "name": "test_volume", "description": "test" } }
Response¶
Response parameters
Parameter
Type
Description
volume
Object
The information of the updated disk. For details, see Parameters in the volume field.
error
Object
The error message returned if an error occurs. For details, see Parameters in the error field.
Parameters in the volume field
Parameter
Type
Description
id
String
The disk ID.
links
list<map<String,String>>
The disk URI. For details, see Parameters in the links field.
name
String
The disk name.
status
String
The disk status. For details, see EVS Disk Status.
attachments
list
The disk attachment information. For details, see Parameters in the attachments field.
availability_zone
String
The AZ to which the disk belongs.
bootable
String
Whether the disk is bootable.
true: indicates a bootable disk.
false: indicates a non-bootable disk.
encrypted
Boolean
This field is currently not supported.
created_at
String
The time when the disk was created.
Time format: UTC YYYY-MM-DDTHH:MM:SS.XXXXXX
description
String
The disk description.
volume_type
String
The disk type.
The value can be SSD or SAS.
SSD: the ultra-high I/O type
SAS: the high I/O type
replication_status
String
The reserved field.
consistencygroup_id
String
The reserved field.
source_volid
String
The source disk ID.
This field is currently not supported.
snapshot_id
String
The snapshot ID.
metadata
Object
The disk metadata. For details, see Parameters in the metadata field.
size
Integer
The disk size, in GB.
user_id
String
The reserved field.
updated_at
String
The time when the disk was updated.
Time format: UTC YYYY-MM-DDTHH:MM:SS.XXXXXX
shareable
Boolean
Whether the disk is shareable.
Note
This field is no longer used. Use multiattach.
multiattach
Boolean
Whether the disk is shareable.
true: indicates a shared disk.
false: indicates a non-shared disk.
storage_cluster_id
String
The reserved field.
Parameters in the links field
Parameter
Type
Description
href
String
The corresponding shortcut link.
rel
String
The shortcut link marker name.
Parameters in the attachments field
Parameter
Type
Description
server_id
String
The ID of the server to which the disk is attached.
attachment_id
String
The ID of the attachment information.
attached_at
String
The time when the disk was attached.
Time format: UTC YYYY-MM-DDTHH:MM:SS.XXXXXX
host_name
String
The name of the physical host housing the cloud server to which the disk is attached.
volume_id
String
The disk ID.
device
String
The device name.
id
String
The ID of the attached disk.
Parameters in the metadata field
Parameter
Type
Description
__system__encrypted
String
The encryption field in metadata.
0: indicates a non-encrypted disk.
1: indicates an encrypted disk.
If this parameter does not appear, the disk is not encrypted.
__system__cmkid
String
The encryption CMK ID in metadata. This parameter is used together with __system__encrypted for encryption. The length of cmkid is fixed at 36 bytes.
hw:passthrough
String
The parameter that describes the disk device type in metadata. The value can be true or false.
true indicates the SCSI device type, which allows ECS OSs to directly access the underlying storage media and support SCSI reservations commands.
false indicates the VBD device type (the default type), which supports only simple SCSI read/write commands.
If this parameter does not appear, the disk device type is VBD.
full_clone
String
The clone method. If the disk is created from a snapshot, value 0 indicates the linked cloning method.
Parameters in the error field
Parameter
Type
Description
message
String
The error message returned if an error occurs.
code
String
The error code returned if an error occurs.
For details about the error code, see Error Codes.
Example response
{ "volume": { "attachments": [ ], "availability_zone": "az-dc-1", "bootable": "false", "consistencygroup_id": null, "created_at": "2016-05-25T02:38:40.392463", "description": "create for api test", "encrypted": false, "id": "8dd7c486-8e9f-49fe-bceb-26aa7e312b66", "links": [ { "href": "https://volume.localdomain.com:8776/v2/5dd0b0056f3d47b6ab4121667d35621a/volumes/8dd7c486-8e9f-49fe-bceb-26aa7e312b66", "rel": "self" }, { "href": "https://volume.localdomain.com:8776/5dd0b0056f3d47b6ab4121667d35621a/volumes/8dd7c486-8e9f-49fe-bceb-26aa7e312b66", "rel": "bookmark" } ], "metadata": { "volume_owner": "openapi" }, "name": "openapi_vol01", "replication_status": "disabled", "multiattach": false, "size": 40, "snapshot_id": null, "source_volid": null, "status": "creating", "updated_at": null, "user_id": "39f6696ae23740708d0f358a253c2637", "volume_type": "SAS" } }
or
{ "error": { "message": "XXXX", "code": "XXX" } }
In the preceding example, error indicates a general error, for example, badRequest or itemNotFound. An example is provided as follows:
{ "badRequest": { "message": "XXXX", "code": "XXX" } }
Status Codes¶
Normal
200
Error Codes¶
For details, see Error Codes.