Updated on 2022-02-22 GMT+08:00

Querying Details About All Disks

Function

This API is used to query details about all disks.

URI

  • URI format

    GET /v2/{project_id}/volumes/detail

  • 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.

  • Request filter parameters

    Parameter

    Type

    Mandatory

    Description

    marker

    String

    No

    Specifies the ID of the last record on the previous page. The returned value is the value of the item after this one.

    name

    String

    No

    Specifies the disk name. The value can contain a maximum of 255 bytes.

    limit

    Integer

    No

    Specifies the maximum number of query results that can be returned.

    The value ranges from 1 to 1000, and the default value is 1000. The returned value cannot exceed this limit.

    If the tenant has more than 50 disks in total, you are advised to use this parameter and set its value to 50 to improve the query efficiency. Examples are provided as follows:

    GET /v2/xxx/volumes/detail?limit=50: Queries the 1–50 disks. GET /v2/xxx/volumes/detail?offset=50&limit=50: Queries the 51–100 disks.

    sort_key

    String

    No

    Specifies the keyword based on which the returned results are sorted. The value can be id, status, size, or created_at, and the default value is created_at.

    sort_dir

    String

    No

    Specifies the result sorting order. The default value is desc.
    • desc: indicates the descending order.
    • asc: indicates the ascending order.

    offset

    Integer

    No

    Specifies the offset.

    All disks after this offset will be queried. The value must be an integer greater than 0 but less than the number of disks.

    status

    String

    No

    Specifies the disk status. For details, see EVS Disk Status.

    metadata

    String

    No

    Specifies the disk metadata.

    availability_zone

    String

    No

    Specifies the AZ.

Request

The following example shows how to query details of the disks in the available state.

  • Example request
    GET https://{endpoint}/v2/{project_id}/volumes/detail?status=available

Response

  • Parameter description

    Parameter

    Type

    Description

    volumes

    list

    Specifies the list of queried disks. For details, see Parameters in the volumes field.

    volumes_links

    list

    Specifies the query position marker in the disk list. If only some disks are returned in this query, the URL of the last disk queried will be returned. You can use this URL to continue to query the remaining disks in the next query. For details, see Parameters in the links field.

    error

    Object

    Specifies the error message returned when an error occurs. For details, see Parameters in the error field.

  • Parameters in the volumes field

    Parameter

    Type

    Description

    id

    String

    Specifies the disk ID.

    links

    list<map<String,String>>

    Specifies the disk URI. For details, see Parameters in the links field.

    name

    String

    Specifies the disk name.

    status

    String

    Specifies the disk status. For details, see EVS Disk Status.

    attachments

    list

    Specifies the disk attachment information. For details, see Parameters in the attachments field.

    availability_zone

    String

    Specifies the AZ to which the disk belongs.

    os-vol-host-attr:host

    String

    Reserved field

    source_volid

    String

    Specifies the source disk ID. This parameter has a value if the disk is created from a source disk.

    Currently, this field is not supported by EVS.

    snapshot_id

    String

    Specifies the snapshot ID. This parameter has a value if the disk is created from a snapshot.

    description

    String

    Specifies the disk description.

    created_at

    String

    Specifies the time when the disk was created.

    Time format: UTC YYYY-MM-DDTHH:MM:SS.XXXXXX

    volume_type

    String

    Specifies the disk type.

    Currently, only SSD and SAS are supported.
    • SSD: specifies the ultra-high I/O disk type.
    • SAS: specifies the high I/O disk type.

    os-vol-tenant-attr:tenant_id

    String

    Specifies the ID of the tenant to which the disk belongs. The tenant ID is actually the project ID.

    size

    Integer

    Specifies the disk size, in GB.

    metadata

    Object

    Specifies the disk metadata. For details, see Parameters in the metadata field.

    If metadata does not contain the hw:passthrough field, the disk device type is VBD.

    os-vol-mig-status-attr:migstat

    String

    Reserved field

    os-vol-mig-status-attr:name_id

    String

    Reserved field

    os-volume-replication:extended_status

    String

    Reserved field

    encrypted

    Boolean

    Currently, this field is not supported by EVS.

    replication_status

    String

    Reserved field

    user_id

    String

    Reserved field

    consistencygroup_id

    String

    Specifies the ID of the consistency group where the disk belongs.

    Currently, this field is not supported by EVS.

    bootable

    String

    Specifies whether the disk is bootable.
    • true: specifies a bootable disk.
    • false: specifies a non-bootable disk.

    updated_at

    String

    Specifies the time when the disk was updated.

    Time format: UTC YYYY-MM-DDTHH:MM:SS.XXXXXX

    shareable

    Boolean

    Specifies whether the disk is shareable.

    NOTE:

    This field is no longer used. Use multiattach.

    multiattach

    Boolean

    Specifies whether the disk is shareable.
    • true: specifies a shared disk.
    • false: specifies a non-shared disk.

    volume_image_metadata

    Object

    Specifies whether the disk is created from an image. This field has a value if the disk is created from an image. Otherwise, it is left empty.

    NOTE:

    For details about volume_image_metadata, see Querying Image Details in the Image Management Service API Reference.

  • Parameters in the links field

    Parameter

    Type

    Description

    href

    String

    Specifies the corresponding shortcut link.

    rel

    String

    Specifies the shortcut link marker name.

  • Parameters in the attachments field

    Parameter

    Type

    Description

    server_id

    String

    Specifies the ID of the server to which the disk is attached.

    attachment_id

    String

    Specifies the ID of the attachment information.

    attached_at

    String

    Specifies the time when the disk was attached.

    Time format: UTC YYYY-MM-DDTHH:MM:SS.XXXXXX

    host_name

    String

    Specifies the name of the physical host accommodating the server to which the disk is attached.

    volume_id

    String

    Specifies the disk ID.

    device

    String

    Specifies the device name.

    id

    String

    Specifies the ID of the attached resource.

  • Parameters in the metadata field

    Parameter

    Type

    Description

    full_clone

    String

    Specifies the clone method. When the disk is created from a snapshot, the parameter value is 0, indicating the linked cloning method.

  • Parameters in the error field

    Parameter

    Type

    Description

    message

    String

    Specifies the error message returned when an error occurs.

    code

    String

    Specifies the error code returned when an error occurs.

    For details about the error code, see Error Codes.

  • Example response
    {
        "volumes": [
            {
                "attachments": [ ], 
                "availability_zone": "az-dc-1", 
                "bootable": "false", 
                "consistencygroup_id": null, 
                "created_at": "2016-05-25T02:42:10.856332", 
                "description": null, 
                "encrypted": false, 
                "id": "b104b8db-170d-441b-897a-3c8ba9c5a214", 
                "links": [
                    {
                        "href": "https://volume.localdomain.com:8776/v2/dd14c6ac581f40059e27f5320b60bf2f/volumes/b104b8db-170d-441b-897a-3c8ba9c5a214", 
                        "rel": "self"
                    }, 
                    {
                        "href": "https://volume.localdomain.com:8776/dd14c6ac581f40059e27f5320b60bf2f/volumes/b104b8db-170d-441b-897a-3c8ba9c5a214", 
                        "rel": "bookmark"
                    }
                ], 
                "metadata": {}, 
                "name": "zjb_u25_test", 
                "os-vol-host-attr:host": "pod01.xxx#SATA", 
                "volume_image_metadata": { }, 
                "os-vol-mig-status-attr:migstat": null, 
                "os-vol-mig-status-attr:name_id": null, 
                "os-vol-tenant-attr:tenant_id": "dd14c6ac581f40059e27f5320b60bf2f",  
                "os-volume-replication:extended_status": null, 
                "replication_status": "disabled", 
                "multiattach": false, 
                "size": 1, 
                "snapshot_id": null, 
                "source_volid": null, 
                "status": "available", 
                "updated_at": "2016-05-25T02:42:22.341984", 
                "user_id": "b0524e8342084ef5b74f158f78fc3049", 
                "volume_type": "SATA"
            }
        ], 
        "volumes_links": [
            {
                "href": "https://volume.localdomain.com:8776/v2/dd14c6ac581f40059e27f5320b60bf2f/volumes/detail?limit=1&marker=b104b8db-170d-441b-897a-3c8ba9c5a214", 
                "rel": "next"
            }
        ]
    }

    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:

    {
        "itemNotFound": {
            "message": "XXXX", 
            "code": "XXX"
        }
    } 

Status Codes

  • Normal

    200

Error Codes

For details, see Error Codes.