1. Volumes
Barrack API Documentation
  • Platform Documentation
    • Getting Started
    • Authentication & Access
    • Account Management
    • API Keys
    • GPU Models
    • Regions
    • Instance
      • OS Images
      • Bootsource Management
      • Deploy Instance
      • Instance Management
      • Hibernation
      • View Instances
    • Billing
      • Credit Depletion & Resource Protection
    • SSH Keys
      • Add SSH Keys
      • Manage SSH Keys
      • Connecting to Your VM via SSH
    • Volumes
      • Overview
      • Create Volume
      • List and View Volumes
      • Attach Volumes
      • Detach Volumes
      • Clone Volumes
      • Resize Volume
      • Delete Volume
    • Advanced Configurations
      • Network And Security
      • Cloudinit Script
      • Startup Script
    • Firewall
      • Manage Firewall
      • Rules and Attachment
    • Snapshot
      • Overview
      • Manage Snapshots
      • Restore Snapshots
    • Custom Images
      • Overview
      • Create and Manage Images
  • Balance
    • Get credit balance
      GET
  • Deploy Instance
    • Create a new instance
      POST
  • Pricing
    • Get pricing information
      GET
    • Get pricing information
      POST
  • Instances
    • List instances
    • Delete instance
    • Hibernate instance
    • Reboot instance
    • Restore hibernated instance
    • Start instance
    • Stop instance
    • Toggle public IP for instance
    • Get instance details
    • Get firewalls attached to instance
    • Add instance security rule
    • Remove instance security rule
    • Get instance billing
    • List Instance eligible for snapshot creation
  • SSH Keys
    • List SSH keys
    • Create SSH key
    • Get SSH key
    • Delete SSH key
  • Volumes
    • Attach volumes to instance
    • Detach volumes from instance
    • List volumes
    • Create volume
    • Get volume details
    • Delete volume
    • Clone volume
    • Resize volume
    • Get volume billing
    • List available volume types
  • 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
  • Snapshots
    • Create snapshot
    • List snapshots
    • Get snapshot details
    • Delete snapshot
    • Restore snapshot
    • Get snapshot billing
  • Images
    • List custom images
    • Get image details
    • Delete custom image
    • List OS images
    • Create image from snapshot
    • Get snapshot-image relationship
    • Get snapshot-image relationship list
  • Firewalls
    • List firewalls
    • Get firewall details
    • Attach firewall to instances
    • Delete firewall
    • Remove firewall rule
    • Add firewall rule
    • Create firewall
    • List instances available for firewall attachment
    • Get supported protocols
  • GPU Stocks
    • Get GPU stock availability
  • GPU Specs
    • Get GPU specifications
  • Regions
    • List available regions
  • Schemas
    • AddFirewallRuleRequest
    • APIKeyResponse
    • AddFirewallRuleResponse
    • AddVMSecurityRuleResponse
    • AttachFirewallRequest
    • AggregatedBillingResponse
    • AttachFirewallResponse
    • AttachVolumesRequest
    • AttachVolumesResponse
    • AttachedFirewall
    • BatchSnapshotImageRelationshipResponse
    • Balance
    • Billing
    • ChatCompletionsRequest
    • ChatCompletionsResponse
    • CloneVolumeRequest
    • BillingRecord
    • BillingBreakdown
    • CloneVolumeResponse
    • BillingSummary
    • CreateFirewallRequest
    • CreateFirewallResponse
    • BootSourceEnum
    • CreateImageFromSnapshotRequest
    • BulkDeleteResponse
    • CreateSSHKeyRequest
    • CreateScriptRequest
    • CreateSnapshotRequest
    • CreateSnapshotResponse
    • CreateSSHKeyResponse
    • ComputeBilling
    • CurrencyEnum
    • Data
    • CreditBalanceResponse
    • CreateAPIKeyRequest
    • DeleteFirewallResponse
    • CreateVolumeRequest
    • CreateAPIKeyRequestTierEnum
    • DeleteSnapshotResponse
    • CreateVolumeResponse
    • CreateAPIKeyResponse
    • DeleteVMResponse
    • DetachVolumesRequest
    • DetachVolumesResponse
    • DeploymentRequest
    • DirectionEnum
    • DeploymentResponse
    • CreateSnapshotData
    • EthertypeEnum
    • ErrorResponse
    • FirewallAttachment
    • DeleteVolumeResponse
    • DeleteSSHKeyResponse
    • FirewallEnvironment
    • FirewallResponse
    • FirewallRule
    • FirewallVM
    • DataVolumeBilling
    • GetBatchSnapshotImageRelationshipsRequest
    • GetFirewallDetailsResponse
    • GPUStockConfiguration
    • GPUSpec
    • GetHibernatedVMsResponse
    • GPUStockItem
    • GPUSpecsResponse
    • GetSupportedProtocolsResponse
    • GPUStocksResponse
    • GetVMAttachedFirewallsResponse
    • DeploymentData
    • DeleteAPIKeyResponse
    • GetVolumeTypesResponse
    • HibernateVMResponse
    • HibernationBillingMetrics
    • ListFirewallsResponse
    • ListUserVMsResponse
    • ListVMsResponse
    • DeploymentDataStatusEnum
    • ModelsResponse
    • GetSSHKeysResponse
    • Pagination
    • PricingRequest
    • OSImage
    • Deposit
    • PricingResponse
    • OSImagesResponse
    • DepositStatusEnum
    • Protocol
    • GpuCountEnum
    • FirewallInstance
    • ProtocolEnum
    • Image
    • GpuModelEnum
    • GetVolumeDetailsResponse
    • RebootVMResponse
    • ImageCreateResponse
    • RecentHibernation
    • ImageDeleteResponse
    • GetVolumesWithNextNameResponse
    • RemoveFirewallRuleResponse
    • ImageDetailResponse
    • RemoveVMSecurityRuleResponse
    • Region
    • ImageListResponse
    • ResizeVolumeRequest
    • RegionsResponse
    • Price
    • ResizeVolumeResponse
    • ResourceTypeEnum
    • RestoreSnapshotRequest
    • RestoreSnapshotResponse
    • GetSSHKeyDetailResponse
    • RestoreVMResponse
    • Snapshot
    • SnapshotImageRelationshipResponse
    • GetSnapshotDetailsResponse
    • Specs
    • StartVMResponse
    • GpuBilling
    • StopVMResponse
    • TierEnum
    • UpdateScriptRequest
    • UsageHistoryResponse
    • UsageSummaryResponse
    • RegionEnum
    • UserVM
    • VMDetailsResponse
    • VMFlavor
    • InstanceFeatures
    • VMImage
    • InstanceSpecs
    • VMInstance
    • IpStatusEnum
    • VMResponse
    • SpecsMetadata
    • VMSecurityRule
    • VMSecurityRuleRequest
    • VMStatus
    • VMVolumeAttachment
    • Script
    • ListFirewallInstancesResponse
    • VolumeTypeEnum
    • SSHKeyResponse
    • ScriptListResponse
    • OsVolume
    • ListSnapshotsResponse
    • ListVMsForSnapshotResponse
    • ListAPIKeysResponse
    • PricingRequestVolumeTypeEnum
    • ToggleVMPublicIPResponse
    • PatchedDeposit
    • PatchedTransaction
    • PaymentMethodEnum
    • VolumeBillingRecord
    • VolumeBillingSummary
    • VolumeHourlyBillingResponse
    • SecurityRule
    • ScriptCreateResponse
    • RestoreSnapshotData
    • ScriptDeleteResponse
    • ScriptDetailResponse
    • VolumeResponse
    • ScriptUpdateResponse
    • StatusEnum
    • StorageBilling
    • SnapshotBillingRecord
    • SnapshotBillingResponse
    • SnapshotBillingSummary
    • SnapshotDetail
    • SnapshotListItem
    • SnapshotVMResponse
    • Tier528Enum
    • TokenObtainPair
    • TokenRefresh
    • Transaction
    • VolumeCreate
    • TransactionTypeEnum
    • VolumeCreateVolumeTypeEnum
    • VolumeRate
    • UserProfile
    • VMDetailVolumeAttachment
    • VMOperations
    • VMSpecs
    • VolumeTypeItem
    • VolumeTypesByTier
  1. Volumes

Attach Volumes

Connect persistent storage volumes to your instances for data storage and retrieval. Volumes provide independent storage that persists across instance shutdowns and restarts.

Attachment Requirements#

Before attaching a volume, ensure these conditions are met:
Volume Status
Must Be "Available"
Not currently attached to another instance
Not in "Creating" status
Not in a transitional state (Attaching/Detaching)
Shows "Available" badge on volume card
Instance Status
Must Be "SHUTOFF"
Instance is powered off
Not running (ACTIVE)
Not creating, hibernated, suspended, or terminated
Shut down instance before attachment
Region & Tier Match
Same Region and Tier Required
Volume and instance in identical region
Volume and instance in the same tier (Advanced or Legacy)
No cross-region or cross-tier attachment supported
Verify both match before proceeding
Volume Types
All Types Supported
SSD volumes (CANADA-1)
NVMe volumes (FINLAND-1/2/3)
HDD volumes (FINLAND-1/2/3)
OS/bootable volumes have special restrictions
OS/Bootable Volume Special Rules:
Permanent attachment — once attached to an instance, cannot be detached or moved to a different instance
Only available in CANADA-1 region
Non-bootable volumes can be moved between instances freely
Batch Limits:
Maximum 10 volumes can be attached in a single request
Duplicate volume IDs are not allowed in a single request

Attaching a Volume#

1
Navigate & Select Volume
Go to barrack.ai/volumes
Use the region dropdown to filter volumes by your instance's region
Locate the volume you want to attach
Verify Before Proceeding:
Volume status shows "Available"
Volume region matches target instance region
Volume tier matches target instance tier
Attach button is enabled (not grayed out)
Click the Attach button on the volume card
2
Select Instance
The instance selection modal opens
What You'll See:
Only SHUTOFF instances appear in the list
Only instances in the same region as the volume
Only instances in your current currency context
Instance name, ID, and status displayed
Select the target instance by clicking on it
If No Instances Appear:
This means no instances meet all requirements. Common reasons:
No instances in SHUTOFF status in this region
Instances are in a different currency context than your current preference
No instances exist in this region
See Troubleshooting section below for resolution steps.
3
Confirm Attachment
Click the Attach button in the modal to confirm
Processing:
Request is sent to the backend
Volume is attached to the instance
Typically completes in 5-10 seconds
Success notification appears when complete
The modal closes automatically

Post-Attachment Status#

After successful attachment, these changes occur:

Volume Changes#

Status Updates:
Status badge changes from "Available" to "Attached"
Instance name appears on volume card
Instance ID displayed on volume card
Button Changes:
Attach button is hidden
Detach button appears (for non-OS volumes)
Delete button becomes disabled

Instance Information#

The volume card now displays:
Which instance the volume is attached to
Instance status (may show VM state)
Instance region

Billing Impact#

No Change in Billing:
Volume billing continues at the same rate
Attachment does not affect billing charges
Credits deducted hourly based on volume size and type
Same rate whether attached or available

Troubleshooting#

Instance must be in SHUTOFF state
VM and volumes must be from the same tier
VM and volumes must be in the same region
Volume is already attached or in use
Volume attachment or detachment already in progress
OS volume cannot be attached to other VMs
Instance not available in current currency context
Cannot attach more than 10 volumes at once
Duplicate volume IDs not allowed
No instances appearing in attachment modal
Attach button is disabled
Attachment fails after instance selection

Common Errors#

For authentication, credits, profile, and session errors, see Common Volume Errors.

Instance State Reference#

Understanding instance states is critical for successful volume attachment:
SHUTOFF (Required)
ACTIVE (Invalid)
CREATING (Invalid)
HIBERNATED (Invalid)
TERMINATED (Invalid)
Description: Instance is powered off and not consuming compute resources
Volume Operations:
✅ Attach volumes allowed
✅ Detach volumes allowed
How to Achieve:
1.
Navigate to instances page
2.
Click shutdown/stop button on instance card
3.
Wait for status to change to SHUTOFF
Verification: Instance card shows "SHUTOFF" status badge

Next Steps#

After attaching volumes:
1
Start Instance
Navigate to the instances page and start the instance with the attached volume
2
Configure Volume in OS
SSH into the instance and configure the volume:
Identify the volume device using lsblk
Create a filesystem if it's a new volume
Mount the volume to your desired location
Configure automatic mounting in /etc/fstab
3
Verify Attachment
Confirm successful attachment:
Volume appears in volume list with "Attached" status
Instance information displayed on volume card
Volume is accessible and usable in instance OS
4
Monitor Usage
Track your volume usage:
Monitor volume billing in account settings
Track storage utilization in your instance
Plan for resize if approaching capacity

Support#

Email Support
Attachment Issues Help
Contact for:
Attachment errors
Instance state problems
Region mismatch issues
Include: volume ID and name, instance ID and name, error messages, request ID, screenshots
Detach Volumes
Volume Detachment Guide
Learn how to:
Disconnect volumes from instances
Requirements for detachment
Handle OS/bootable volumes
Prepare for re-attachment
Previous
List and View Volumes
Next
Detach Volumes
Built with