Python SDK
Block Storage
Volumes, snapshots, and backups
20 methods
list_backups()
List backups
Parameters
limitinteger
- Maximum number of items to return
markerstring
- ID of the last item from the previous page (for pagination)
namestring
- Filter by name (exact match or prefix with *)
statusstring
- Filter by status
volume_idstring
- Filter by volume ID
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.list_backups()print(result)
create_backup()
Create backup
Parameters
volume_idstring
required- Volume to backup
namestring
descriptionstring
containerstring
- Backup container
incrementalboolean
- Create incremental backup
forceboolean
- Force backup even if volume is attached
snapshot_idstring
- Create backup from snapshot instead of volume
metadataobject
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.create_backup(volume_id="550e8400-e29b-41d4-a716-446655440000")print(result)
get_backup()
Get backup
Parameters
backup_idstring
required- Backup ID
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.get_backup(backup_id="550e8400-e29b-41d4-a716-446655440000")print(result)
delete_backup()
Delete backup
Parameters
backup_idstring
required- Backup ID
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.delete_backup(backup_id="550e8400-e29b-41d4-a716-446655440000")print(result)
restore_backup()
Restore backup
Parameters
backup_idstring
required- Backup ID
volume_idstring
- Existing volume to restore to (creates new volume if omitted)
namestring
- Name for new volume (if not restoring to existing)
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.restore_backup(backup_id="550e8400-e29b-41d4-a716-446655440000")print(result)
list_snapshots()
List snapshots
Parameters
limitinteger
- Maximum number of items to return
markerstring
- ID of the last item from the previous page (for pagination)
namestring
- Filter by name (exact match or prefix with *)
statusstring
- Filter by status
volume_idstring
- Filter by volume ID
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.list_snapshots()print(result)
create_snapshot()
Create snapshot
Parameters
volume_idstring
required- Volume to snapshot
namestring
descriptionstring
forceboolean
- Force snapshot even if volume is attached
metadataobject
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.create_snapshot(volume_id="550e8400-e29b-41d4-a716-446655440000")print(result)
get_snapshot()
Get snapshot
Parameters
snapshot_idstring
required- Snapshot ID
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.get_snapshot(snapshot_id="550e8400-e29b-41d4-a716-446655440000")print(result)
update_snapshot()
Update snapshot
Parameters
snapshot_idstring
required- Snapshot ID
namestring
descriptionstring
metadataobject
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.update_snapshot(snapshot_id="550e8400-e29b-41d4-a716-446655440000")print(result)
delete_snapshot()
Delete snapshot
Parameters
snapshot_idstring
required- Snapshot ID
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.delete_snapshot(snapshot_id="550e8400-e29b-41d4-a716-446655440000")print(result)
list_volume_types()
List volume types
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.list_volume_types()print(result)
get_volume_type()
Get volume type
Parameters
volume_type_idstring
required- Volume Type ID
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.get_volume_type(volume_type_id="550e8400-e29b-41d4-a716-446655440000")print(result)
list_volumes()
List volumes
Parameters
limitinteger
- Maximum number of items to return
markerstring
- ID of the last item from the previous page (for pagination)
namestring
- Filter by name (exact match or prefix with *)
statusstring
- Filter by status
bootableboolean
- Filter by bootable status
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.list_volumes()print(result)
create_volume()
Create volume
Parameters
namestring
descriptionstring
sizeinteger
required- Size in GB
volume_typestring
- Volume type name or ID
snapshot_idstring
- Create volume from snapshot
source_volume_idstring
- Clone from existing volume
image_idstring
- Create volume from image
multiattachboolean
metadataobject
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.create_volume(size=100)print(result)
get_volume()
Get volume
Parameters
volume_idstring
required- Volume ID
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.get_volume(volume_id="550e8400-e29b-41d4-a716-446655440000")print(result)
update_volume()
Update volume
Parameters
volume_idstring
required- Volume ID
namestring
descriptionstring
metadataobject
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.update_volume(volume_id="550e8400-e29b-41d4-a716-446655440000")print(result)
delete_volume()
Delete volume
Parameters
volume_idstring
required- Volume ID
forceboolean
- Force delete even if volume is in use
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.delete_volume(volume_id="550e8400-e29b-41d4-a716-446655440000")print(result)
attach_volume()
Attach volume
Parameters
volume_idstring
required- Volume ID
instance_idstring
required- Instance to attach to
devicestring
- Device name (e.g., /dev/vdb). Auto-assigned if omitted.
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.attach_volume(volume_id="550e8400-e29b-41d4-a716-446655440000", instance_id="550e8400-e29b-41d4-a716-446655440000")print(result)
detach_volume()
Detach volume
Parameters
volume_idstring
required- Volume ID
instance_idstring
required- Instance to detach from
forceboolean
- Force detach even if instance is running
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.detach_volume(volume_id="550e8400-e29b-41d4-a716-446655440000", instance_id="550e8400-e29b-41d4-a716-446655440000")print(result)
extend_volume()
Extend volume
Parameters
volume_idstring
required- Volume ID
new_sizeinteger
required- New size in GB (must be larger than current size)
Example
from bycloud import ByCloudclient = ByCloud(token="YOUR_ACCESS_TOKEN")result = client.block_storage.extend_volume(volume_id="550e8400-e29b-41d4-a716-446655440000", new_size=10)print(result)