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

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

Parameters
project_id: number
region_id: number
volume_id: string
Response fields
count: number

Number of metadata items returned

results: Array<{ key, read_only, value }>
Optional

Metadata list

Request example
200Example
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