Barrack API Documentation
  1. storage
Barrack API Documentation
  • Platform Documentation
    • "Authentication & Access"
    • "Getting Started"
    • "Platform Documentation"
    • "Troubleshooting"
    • vm
      • "Advanced Configuration"
      • "Boot Source Configuration"
      • "GPU Configuration"
      • "Region Selection"
      • "SSH Key Configuration"
      • "VM States & Billing"
    • storage
      • "Managing Volumes"
      • "Storage Management"
    • ssh
      • "Creating SSH Keys"
      • "Importing SSH Keys"
      • "Managing SSH Keys"
    • security
      • "Attaching Firewalls to VMs"
      • "Firewall Management"
      • "Firewall Rules"
    • dashboard
      • "Dashboard Overview"
      • "VM Management"
    • backup
      • "Creating Snapshots"
      • "Custom Images"
      • "Managing Snapshots"
      • "Restoring Snapshots"
      • "Snapshots Management"
    • account
      • "Credits System"
      • "Account Management"
  • Balance
    • Get credit balance
      GET
  • GPU Stocks
    • Get GPU stock availability
      GET
  • GPU Specs
    • Get GPU specifications
      GET
  • Regions
    • List available regions
      GET
  • Pricing
    • Get pricing information
      GET
    • Get pricing information
      POST
  • Deploy Instance
    • Create a new instance
      POST
  • Instance management
    • List instances
      GET
    • Delete instance
      DELETE
    • Get instance billing
      GET
    • Hibernate instance
      POST
    • Reboot instance
      POST
    • Restore hibernated instance
      POST
    • Start instance
      POST
    • Stop instance
      POST
    • Toggle public IP for instance
      POST
    • Get instance details
      GET
    • Get hibernated instances count
      GET
    • Add instance security rule
      POST
    • Remove instance security rule
      DELETE
  • OS Images
    • List OS images
  • SSH Keys
    • List SSH keys
    • Create SSH key
    • Get SSH key
    • Delete SSH key
  • Scripts
    • List all startup scripts
    • Create a startup script
    • Get startup script details
    • Update a startup script
    • Delete a startup script
    • Delete multiple startup scripts
  • Firewalls
    • List firewalls
    • Get firewall details
    • Attach firewall to instances
    • Get firewalls attached to instance
    • Delete firewall
    • Remove firewall rule
    • Add firewall rule
    • Create firewall
    • Get supported protocols
    • List instances available for firewall attachment
    • List instances available for firewall attachment
  • Snapshots
    • List snapshots
    • Get snapshot billing
    • List Instance eligible for snapshot creation
    • Get snapshot details
    • Delete snapshot
    • Restore snapshot
    • Create snapshot
    • Create snapshot
    • Get snapshot billing
  • Images
    • List custom images
    • Get image details
    • Delete custom image
    • Create image from snapshot
    • Get snapshot-image relationship
    • Get snapshot-image relationship list
  • AI Chat
    • Chat with AI
    • Get AI usage summary
    • Get AI usage history
    • Get available AI models
  • Volumes
    • Attach volumes to instance
    • Detach volumes from instance
    • Clone volume
    • Resize volume
    • Get volume billing
    • List available volume types
    • List volumes
    • Create volume
    • Get volume details
    • Delete volume
  • Virtual Machines
    • Get firewalls attached to instance
    • Remove instance security rule
    • List Instance eligible for snapshot creation
  • Schemas
    • AITransaction
    • AddFirewallRuleRequest
    • AddFirewallRuleResponse
    • AddVMSecurityRuleResponse
    • AttachFirewallRequest
    • AggregatedBillingResponse
    • AttachFirewallResponse
    • AttachVolumesRequest
    • AttachVolumesResponse
    • AttachedFirewall
    • BatchSnapshotImageRelationshipResponse
    • Balance
    • Billing
    • ChatCompletionsRequest
    • ChatCompletionsResponse
    • CloneVolumeRequest
    • BillingRecord
    • CloneVolumeResponse
    • BillingSummary
    • CreateFirewallRequest
    • CreateFirewallResponse
    • CreateImageFromSnapshotRequest
    • CreateSSHKeyRequest
    • CreateScriptRequest
    • CreateSnapshotRequest
    • CreateSnapshotResponse
    • CreateSSHKeyResponse
    • CurrencyEnum
    • Data
    • CreditBalanceResponse
    • DeleteFirewallResponse
    • CreateVolumeRequest
    • DeleteSnapshotResponse
    • CreateVolumeResponse
    • DeleteVMResponse
    • DetachVolumesRequest
    • DetachVolumesResponse
    • DeploymentRequest
    • DirectionEnum
    • DeploymentResponse
    • EthertypeEnum
    • ErrorResponse
    • FirewallAttachment
    • DeleteVolumeResponse
    • DeleteSSHKeyResponse
    • FirewallEnvironment
    • FirewallResponse
    • FirewallRule
    • FirewallVM
    • GetBatchSnapshotImageRelationshipsRequest
    • GetFirewallDetailsResponse
    • GPUStockConfiguration
    • GPUSpec
    • GetHibernatedVMsResponse
    • GPUStockItem
    • GPUSpecsResponse
    • GetSupportedProtocolsResponse
    • GPUStocksResponse
    • GetVMAttachedFirewallsResponse
    • GetVolumeTypesResponse
    • HibernateVMResponse
    • HibernationBillingMetrics
    • ListFirewallsResponse
    • ListUserVMsResponse
    • ListVMsResponse
    • ModelsResponse
    • GetSSHKeysResponse
    • Pagination
    • PricingRequest
    • OSImage
    • PricingResponse
    • OSImagesResponse
    • Protocol
    • GpuCountEnum
    • ProtocolEnum
    • Image
    • GpuModelEnum
    • GetVolumeDetailsResponse
    • RebootVMResponse
    • ImageCreateResponse
    • RecentHibernation
    • ImageDeleteResponse
    • GetVolumesWithNextNameResponse
    • RemoveFirewallRuleResponse
    • ImageDetailResponse
    • RemoveVMSecurityRuleResponse
    • Region
    • ImageListResponse
    • ResizeVolumeRequest
    • RegionsResponse
    • Price
    • ResizeVolumeResponse
    • ResourceTypeEnum
    • RestoreSnapshotRequest
    • RestoreSnapshotResponse
    • RestoreVMResponse
    • Snapshot
    • SnapshotImageRelationshipResponse
    • Specs
    • StartVMResponse
    • StopVMResponse
    • TierEnum
    • UpdateScriptRequest
    • UsageHistoryResponse
    • UsageSummaryResponse
    • RegionEnum
    • UserVM
    • VMDetailsResponse
    • VMFlavor
    • VMImage
    • VMInstance
    • VMResponse
    • SpecsMetadata
    • VMSecurityRule
    • VMSecurityRuleRequest
    • VMStatus
    • VMVolumeAttachment
    • Script
    • VolumeTypeEnum
    • SSHKeyResponse
    • ScriptListResponse
    • ToggleVMPublicIPResponse
    • VolumeBillingRecord
    • VolumeBillingSummary
    • VolumeHourlyBillingResponse
    • VolumeResponse
  1. storage

"Managing Volumes"

The Volumes page provides comprehensive tools for managing your storage, including attaching, detaching, and deleting volumes.
To attach a volume to a VM:
1
Select Volume
Click Attach on an available volume card
2
Review Volume Details
The Volume Attach Modal opens showing:
Volume details (name, size, region, type)
List of VMs in the same region with ACTIVE status
VM information (name, status, region) in a table format
3
Select Target VM
Select a VM using the radio button selection
4
Confirm Attachment
Click "Attach Volume" to confirm

Volume Attach Modal Features#

Smart VM Filtering
Intelligent VM Selection
Only shows VMs in the same region as the volume
Filters by ACTIVE status for compatibility
Displays VM information clearly
Prevents incompatible attachments
Status Validation
Comprehensive Validation
Only ACTIVE VMs can be selected for attachment
Visual status indicators with color coding (green for ACTIVE)
Helpful messages explaining why non-ACTIVE VMs cannot be selected
Auto-selection of the first ACTIVE VM if available

Attachment Requirements#

The system includes loading states that show progress during attachment operations, ensuring you have real-time feedback on the process.

Detaching Volumes#

To detach a volume from a VM:
1
Initiate Detachment
Click Detach on an attached volume
2
Review Warning
A confirmation modal appears with volume details and warnings
3
Acknowledge Impact
Review the warning about potential application disruption
4
Confirm Detachment
Click "Detach" to confirm the operation

Smart Detachment System#

The platform includes an intelligent detachment system:
Automatic Detection
Status Validation
Error Handling
VM Identification: System automatically finds the VM to detach from
Multi-source VM ID: Uses instance_id, attached volume mapping, or region-based VM search
Relationship Mapping: Tracks volume-VM relationships automatically

Detachment Requirements#

VM Status
Active VM Required
VM must be in ACTIVE state for volume detachment
Cannot detach during VM state transitions
System validates VM availability before proceeding
System Volumes
Boot Volume Protection
Cannot detach the system/boot volume of a running VM
System identifies and protects critical volumes
Prevents accidental system disruption

Deleting Volumes#

To delete a volume:
1
Ensure Detachment
Volume must be detached from all VMs first
2
Initiate Deletion
Click Delete on an unattached volume
3
Review Confirmation
A delete confirmation modal appears showing:
Volume name to be deleted
Warning that action cannot be undone
Permanent data loss warning
4
Confirm Deletion
Click "Delete" to confirm the permanent deletion

Delete Confirmation Modal#

The deletion process includes comprehensive safeguards:
Safety Warnings
Process Protection

Deletion Requirements#

Volume Status Indicators#

Volumes display status indicators to show their current state:
Operational States
Transitional States

Volume Information Display#

Each volume card displays comprehensive information:

Header Information#

Volume Name: User-defined identifier with database icon
Status Badge: Current operational state with color coding
Attachment Info: Shows which VM the volume is attached to (if any)
VM Status: Displays the status of the attached VM for operational context

Specifications Grid#

Size: Storage capacity in GB
Region: Geographic location (NORWAY-1, CANADA-1, US-1)
Type: Storage type (Cloud-SSD)
Bootable Status: Whether the volume can be used to boot VMs

Action Buttons#

Dynamic buttons based on volume state:
Attach/Detach: Available based on current attachment status
Delete: Only available for unattached volumes

Storage Best Practices#

Regional Planning
Capacity Management
Data Protection
Operational Efficiency

Volume Management Tips#

Refresh and Data Management#

Keep your volume data current:
Automatic Refresh: The page automatically refreshes after volume operations to show updated status
Loading States: Visual progress indicators show progress for create, attach, detach, and delete operations
Pagination Management: Pagination automatically adjusts when volumes are added or removed
Regional Filtering: Region filtering allows you to manage volumes across different geographic locations
Real-time Updates: Volume statistics update in real-time as you perform operations

Error Handling and Recovery#

Attachment Failures
Detachment Issues
Deletion Problems
Common Issues and Solutions:
VM Not Active: Wait for VM to reach ACTIVE state before attaching
Region Mismatch: Ensure volume and VM are in the same region
Volume In Use: Check if volume is already attached to another VM
Insufficient Permissions: Verify account permissions and status

Integration with VM Workflow#

Seamless Operations#

Volume management integrates seamlessly with your VM workflow:
Live Management: Attach and detach volumes without VM downtime (for data volumes)
Performance Monitoring: Real-time status updates and performance metrics
Automated Detection: System automatically detects volume-VM relationships
Consistency Checks: Validates operations to prevent configuration conflicts

Workflow Examples#

1
Development Environment
Create volumes for project data and dependencies
Attach volumes to development VMs as needed
Detach and reattach volumes to different VMs for testing
Delete temporary volumes when projects are complete
2
Production Deployment
Create bootable volumes with production configurations
Attach data volumes to production VMs for persistence
Implement backup strategies with regular snapshots
Manage volume lifecycle based on business requirements
3
Disaster Recovery
Create cross-region volume backups using snapshots
Test volume restoration procedures regularly
Document volume dependencies and relationships
Implement automated recovery workflows
Previous
"VM States & Billing"
Next
"Storage Management"
Built with