Skip to main content

What You’ll Learn

  • Listing every volume owned by the caller
  • Inspecting per-volume metadata (size, content type, creation time)
  • Deleting a single volume (blob + metadata row)

Prerequisites

Listing

Returns an empty list if the caller has no volumes. The list is owner-scoped: another tenant’s volumes are never visible.

Fetching One

Raises NotFoundException (Python) / NotFoundError (TypeScript) on an unknown or non-owned volume ID.

Deleting

Deletion removes both the blob and the catalog row. It does not affect sandboxes that were previously created with the volume — they hold their own hydrated copies in their overlays. Future Sandbox.create(volumes=[...]) calls referencing that volume_id will fail with 403.

Housekeeping Pattern

Delete every volume whose name matches a prefix and was created more than 7 days ago:

Limitations

  • There is no bulk-delete endpoint; loop over Volumes.list() and call .delete() per item.
  • Deletion is not transactional with in-flight Sandbox.create calls. A volume referenced by a not-yet-dispatched create can be deleted between validation and dispatch; the create then fails.