Volumes
Manage Strongly data volumes.
Access it as client.volumes on a Strongly client, or the same path on AsyncStrongly with await. All methods exist on both with identical signatures.
Quick start
from strongly import Strongly
client = Strongly()
# List (auto-paginates as you iterate) # filters: search, type, project_id
for volume in client.volumes.list():
print(volume.id)
# Create
created = client.volumes.create(
project_id="...",
label="...",
size_gb=0,
)
print(created.id)
# Read it back
fetched = client.volumes.retrieve(created.id)
# Delete (returns None; raises on failure)
client.volumes.delete(created.id)
Methods
Core
list
list(*, search: Optional[str] = None, type: Optional[str] = None, project_id: Optional[str] = None, limit: Optional[int] = None) -> SyncPaginator[Volume]
List volumes with pagination and filters.
create
create(*, project_id: str, label: str, size_gb: float, description: Optional[str] = None, type: Optional[str] = None, mount_path: Optional[str] = None) -> Volume
Create a volume.
Args: project_id: Project the volume belongs to. label: Display label for the volume. size_gb: Size of the volume in gigabytes. description: Volume description. type: Volume type. mount_path: Path the volume is mounted at.
retrieve
retrieve(volume_id: str) -> Volume
Retrieve a single volume by id.
update
update(volume_id: str, *, label: Optional[str] = None, name: Optional[str] = None, description: Optional[str] = None, size_gb: Optional[float] = None, mount_path: Optional[str] = None) -> Volume
Update a volume and return the updated record.
delete
delete(volume_id: str) -> None
Delete a volume. Raises on failure; returns nothing.
Sharing & scope
make_shared
make_shared(volume_id: str) -> Dict[str, Any]
Mark a volume as shared across the organization.
list_shared
list_shared(*, search: Optional[str] = None, limit: Optional[int] = None) -> SyncPaginator[Volume]
List volumes shared with the caller.
Other
sync
sync(volume_id: str) -> Dict[str, Any]
Trigger a sync of the volume's contents.