Volumes

volumes

Methods

Change Volume Type -> { id, attachments, bootable, 19 more... }
post/v1/volumes/{project_id}/{region_id}/{volume_id}/retype

Initiate volume type change

Parameters
project_id: number
region_id: number
volume_id: string
Response fields
id: string
Optional

Volume ID

attachments: Array<{ attachment_id, volume_id, attached_at, 4 more... }>
Optional

Attachment list

bootable: boolean
Optional

Bootable boolean flag

created_at: string
Optional
(format: date-time)

Datetime when the volume was created

creator_task_id: string
Optional

Task that created this entity

device: string
Optional
instance_id: string
Optional
is_root_volume: boolean
Optional

Root volume flag

limiter_stats: { iops_base_limit, iops_burst_limit, MBps_base_limit, 1 more... }
Optional

Volume QoS parameters.

metadata: unknown
Optional

Metadata

metadata_detailed: unknown
Optional

Create one or more metadata items for a volume

name: string
Optional

Volume name

project_id: number
Optional

Project ID

region: string
Optional

Region name

region_id: number
Optional

Region ID

size: number
Optional

Volume size, GiB

snapshot_ids: Array<string>
Optional

Snapshots of this volume

status: string
Optional

Volume status

task_id: string
Optional

Active task. If None, action has been performed immediately in the request itself.

updated_at: string
Optional
(format: date-time)

Datetime when the volume was last updated

volume_image_metadata: unknown
Optional

Image information for volumes that were created from image

volume_type: string
Optional

Volume type

Request example
200Example
Create Volume -> { tasks }
post/v1/volumes/{project_id}/{region_id}

Create volume

Delete Volume -> { tasks }
delete/v1/volumes/{project_id}/{region_id}/{volume_id}

Delete volume

Extend Volume -> { tasks }
post/v1/volumes/{project_id}/{region_id}/{volume_id}/extend

Extend volume

List Volumes -> OffsetPage<{ id, attachments, bootable, 19 more... }>
get/v1/volumes/{project_id}/{region_id}

List volumes

Rename Volume ->
patch/v1/volumes/{project_id}/{region_id}/{volume_id}

Rename volume

Get Volume ->
get/v1/volumes/{project_id}/{region_id}/{volume_id}

Get volume

Revert Volume To It S Last Snapshot -> { tasks }
post/v1/volumes/{project_id}/{region_id}/{volume_id}/revert

Revert volume to it's last snapshot

Domain types

Volume = { id, bootable, created_at, 17 more... }
Volumes

Attach

volumes.attach

Methods

Deprecated Attach Volume ->
post/v1/volumes/{project_id}/{region_id}/{volume_id}/attach

Attach the volume to instance. Note: ultra volume can only be attached to an instance with shared flavor

Attach Volume V2 -> { tasks }
post/v2/volumes/{project_id}/{region_id}/{volume_id}/attach

Attach the volume to instance. Note: ultra volume can only be attached to an instance with shared flavor

Domain types

AttachVolumeToInstance = { instance_id, attachment_tag }

Attach volume to instance schema

Volumes

Detach

volumes.detach

Methods

Deprecated Detach Volume ->
post/v1/volumes/{project_id}/{region_id}/{volume_id}/detach

Detach the volume from instance

Detach Volume V2 -> { tasks }
post/v2/volumes/{project_id}/{region_id}/{volume_id}/detach

Detach the volume from instance

Domain types

InstanceID = { instance_id }
Volumes

Metadata

volumes.metadata

Methods

Create Or Update Volume Metadata ->
post/v1/volumes/{project_id}/{region_id}/{volume_id}/metadata

Create or update one or more metadata items for a volume. If an item does not exist, it gets created. If an item already exists, it's value is overwritten

List Volume Metadata -> { count, results }
get/v1/volumes/{project_id}/{region_id}/{volume_id}/metadata

List all metadata for a volume

Replace Volume Metadata ->
put/v1/volumes/{project_id}/{region_id}/{volume_id}/metadata

All existing metadata is deleted and replaced with the metadata from the request.

Volumes

Metadata Item

volumes.metadata_item

Methods

Delete Volume Metadata Item By Key ->
delete/v1/volumes/{project_id}/{region_id}/{volume_id}/metadata_item

Delete volume metadata item by key

Get Volume Metadata Item By Key -> { key, read_only, value }
get/v1/volumes/{project_id}/{region_id}/{volume_id}/metadata_item

Get volume metadata item by key