Barrack API Documentation
  1. Instance
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
    • SSH Keys
      • Add SSH Keys
      • Manage SSH Keys
    • 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
    • dashboard
      • "Dashboard Overview"
      • "VM Management"
    • AI Chat
      • AI Chat
  • 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 pricing information
  • Deploy Instance
    • Create a new instance
  • Instance management
    • List instances
    • Get instance details
    • Get instance billing
    • Start instance
    • Stop instance
    • Reboot instance
    • Hibernate instance
    • Restore hibernated instance
    • Toggle public IP for instance
    • Add instance security rule
    • Remove instance security rule
    • Delete instance
  • OS Images
    • List OS images
  • SSH Keys
    • List SSH keys
    • Get SSH key
    • Create SSH key
    • Delete SSH key
  • Volumes
    • List volumes
    • Create volume
    • Get volume details
    • Delete volume
    • Resize volume
    • Clone volume
    • Attach volumes to instance
    • Detach volumes from instance
    • List available volume types
    • Get volume billing
  • Firewalls
    • List firewalls
    • Get firewall details
    • Get supported protocols
    • Get firewalls attached to instance
    • List instances available for firewall attachment
    • Create firewall
    • Delete firewall
    • Add firewall rule
    • Remove firewall rule
    • Attach firewall to instances
  • Scripts
    • List all startup scripts
    • Get startup script details
    • Create a startup script
    • Update a startup script
    • Delete a startup script
    • Delete multiple startup scripts
  • Snapshots
    • List snapshots
    • Get snapshot details
    • List Instance eligible for snapshot creation
    • Get snapshot billing
    • Create snapshot
    • Delete snapshot
    • Restore snapshot
  • Images
    • List custom images
    • Get image details
    • Create image from snapshot
    • Delete custom image
    • Get snapshot-image relationship
    • Get snapshot-image relationship list
  • AI Chat
    • Get available AI models
    • Chat with AI
    • Get AI usage summary
    • Get AI usage history
  • 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. Instance

Bootsource Management

Boot source configuration determines how your instance starts and what storage it uses. The platform supports multiple boot source types with regional variations in features and capabilities.

Understanding Volume Types#

Instances require different types of storage volumes serving distinct purposes:
Boot Volume (OS Volume)
Required - One per Instance
Contains the operating system that starts your instance.
Configuration Options:
Deploy from OS Image (creates new boot volume)
Deploy from user volume (uses existing bootable volume from OS Images)
Use existing bootable volume
Deploy from custom image (Legacy regions)
Size:
Advanced tier (OS Images with public images): 100-10,000 GB (configurable)
Advanced tier (OS Images with user volumes): Fixed to volume's size
All other methods: Fixed size based on source
Data Volumes
Optional - Up to 10 per Instance
Additional storage for applications, datasets, and persistent data.
Configuration Options:
Create new volumes during deployment (Advanced tier)
Attach existing volumes (Advanced tier)
Purpose:
Not bootable
Supplementary storage only
Can be detached and reattached to different instances

Regional Deployment Tiers#

The platform operates across two deployment tiers with distinct capabilities:
Advanced Tier Regions
Finland 1, Finland 2, Finland 3, Iceland 1
Boot Source Options:
OS Images with configurable boot volume size
Existing bootable volumes (via OS Images or Volumes tab)
Data Volume Features:
Create up to 10 new data volumes during deployment
Attach up to 10 existing data volumes
NVMe and HDD storage types available
Boot Volume Size:
Configurable: 100-10,000 GB (when using public OS images)
Fixed: Matches source volume (when using user volumes or booting from volume)
Legacy Tier Regions
Canada 1
Boot Source Options:
OS Images (standard configuration)
Existing bootable volumes
Custom images
Data Volume Features:
No data volume creation during deployment
No volume attachment during deployment
Manage volumes separately in Volumes section
Boot Volume Size:
Fixed: 100 GB (when using OS Images)
Fixed: Matches source volume (when booting from volume)

Boot Source Options#

Select one of the following boot source methods based on your requirements and region.

Option 1: Deploy from OS Images#

Deploy from platform operating system images with automatic boot volume creation, or deploy from your existing bootable volumes that appear in the OS Images selection.

Understanding OS Images Selection#

The OS Images dropdown contains two types of sources:
Public OS Images
Platform-Provided Images
Pre-configured operating system images maintained by the platform.
Examples:
Ubuntu versions with CUDA support
Specialized images (Jupyter, ComfyUI, etc.)
Base operating systems
Boot Volume Behavior:
Advanced tier: Configurable size (100-10,000 GB)
Legacy tier: Fixed 100 GB
Creates new volume during deployment
User Volumes
Your Bootable Volumes (Advanced Tier)
Existing bootable volumes you've created appear alongside public images in Advanced tier regions.
Identification:
Listed with your volume names
May show volume size indicator
Appears in same dropdown as public images
Boot Volume Behavior:
Size is fixed to existing volume size
OS volume size controls become read-only
Volume cannot be selected in Attach Volumes

Selecting Your Boot Source#

1
Access OS Images
Select the "OS Images" tab in the boot source section. This tab is available in all regions.
2
Open Selection Dropdown
Click the dropdown to view available sources. You'll see:
Advanced Tier:
Public OS images (Ubuntu, specialized images, etc.)
Your bootable user volumes (if any exist in this region)
Legacy Tier:
Public OS images only
3
Choose Your Source
Select either:
Public OS Image:
Creates new boot volume
OS volume size becomes configurable (Advanced tier)
Proceed to configure boot volume size
User Volume (Advanced tier only):
Uses existing volume as boot source
OS volume size becomes read-only (locked to volume's size)
Volume automatically excluded from Attach Volumes
4
Configure Boot Volume Size
For Public OS Images:
Advanced Tier: Configure size (see section below)
Legacy Tier: Fixed 100 GB (not configurable)
For User Volumes:
Size display is read-only
Shows existing volume size
Cannot be modified

Configuring Boot Volume Size (Advanced Tier - Public Images Only)#

In Advanced tier regions, when deploying from public OS images, you can customize the boot volume size.
Slider Control
Numeric Input
Increment Buttons
Visual Size Adjustment
Drag the slider handle to adjust volume size
Valid range: 100 GB to 10,000 GB
Click anywhere on slider track to jump to specific size
Real-time size display updates as you drag
Disabled State: When user volume selected, slider appears grayed out and cannot be moved
Best for: Quick approximation of desired size

Visual Indicators for Volume Type Selection#

When selecting sources from the OS Images dropdown, the interface provides visual feedback:
Public OS Image Selected (Advanced Tier):
OS volume size slider: Active, draggable, green highlight
Size input field: Editable, accepts numeric input
Increment buttons: Functional
Interface state: Interactive and configurable
User Volume Selected (Advanced Tier):
OS volume size slider: Grayed out, non-interactive, opacity reduced
Size input field: Read-only, cursor shows not-allowed icon
Increment buttons: Non-functional
Interface state: Locked to existing volume size
Legacy Tier (All Sources):
OS volume size controls not displayed
Fixed 100 GB boot volume created automatically

OS Images Deployment Summary#

When deploying from OS Images:
Advanced Tier - Public Image:
Boot volume: Configurable 100-10,000 GB NVMe storage
Operating system: Selected image installed on new volume
Additional storage: Optional data volumes can be created or attached
Advanced Tier - User Volume:
Boot volume: Existing volume with fixed size
Operating system: Pre-installed on selected volume
Additional storage: Optional data volumes can be created or attached (excluding the boot volume)
Volume exclusion: Selected volume automatically excluded from Attach Volumes
Legacy Tier:
Boot volume: Fixed 100 GB standard storage
Operating system: Selected image installed on new volume
Additional storage: Managed separately in Volumes section

Option 2: Boot from Existing Volume#

Use a previously created bootable volume as your boot source via the Volumes tab instead of creating a new volume from an OS image.

Prerequisites for Volume Boot#

Before selecting a volume as boot source, verify:
Volume Status Requirements
Creating Bootable Volumes

Selecting Bootable Volume#

1
Access Volume Selection
Select the "Volumes" tab in the boot source section. This tab is available in all regions.
2
View Available Volumes
Click the volume dropdown to view available bootable volumes.
Display Criteria:
Only volumes in selected region appear
Only volumes marked as bootable are listed
Volume name and size displayed
Attached volumes excluded from list
3
Select Boot Volume
Choose your desired bootable volume from the dropdown.
Volume Information Shown:
Volume name and identifier
Storage size (fixed, cannot be modified)
Volume type (if applicable)
4
Verify Selection
Selected volume appears in the dropdown. Boot volume configuration is complete.

No Bootable Volumes Available#

If no bootable volumes exist in your selected region:
1
Navigate to Volumes
Click "Create volume" button or navigate to Volumes section from main navigation.
2
Create Bootable Volume
Create new volume with bootable flag enabled
Configure size and storage type as needed
Ensure volume is created in correct region
3
Return to Deployment
Navigate back to deployment configuration. Newly created volume appears in selection dropdown.

Boot from Volume Summary#

When booting from existing volume via Volumes tab:
Both Tiers:
Boot volume: Existing volume with fixed size
Operating system: Pre-installed on selected volume
SSH keys: Not configured during deployment (already on volume)
Startup scripts: Not applicable (volume already configured)
Advanced Tier Additional:
Data volumes: Can still create new or attach existing data volumes
OS volume size: Not configurable (uses existing volume size)
Legacy Tier Additional:
Data volumes: Managed separately in Volumes section
No additional configuration during deployment

Option 3: Deploy from Custom Images (Legacy Tier Only)#

Deploy from custom images created from your existing instances.

Selecting Custom Image#

1
Access Custom Images
Select the "Custom Images" tab in the boot source section. This tab only appears in Legacy tier regions.
2
View Available Images
Click the custom image dropdown to view your created images.
Display Criteria:
Only images in selected region appear
Images show name and creation date
Images include size information
3
Select Custom Image
Choose your desired custom image from the dropdown. The selected image appears in the field.

Creating Custom Images#

Custom images are created from running instances:
1
Navigate to Instances
Go to Instances section from main navigation.
2
Create Image from Instance
Select running or stopped instance
Click "Create Image" action
Provide image name and optional description
Wait for image creation process to complete
3
Use in Deployment
Return to deployment configuration. Created image appears in custom images dropdown.

Additional Storage Configuration (Advanced Tier)#

Advanced tier regions support creating and attaching data volumes during deployment. These volumes provide additional storage separate from the boot volume.

Creating New Data Volumes#

Create up to 10 new data volumes that will be created and attached when your instance deploys.

Volume Creation Process#

1
Access Volume Creation
In the deployment configuration, locate the "Volumes" section (separate from boot source selection) and click the Add button.
2
Configure Volume Name
Name Requirements:
Length: 3-30 characters
Allowed characters: letters (a-z, A-Z), numbers (0-9), hyphens (-), underscores (_)
Cannot start or end with hyphen or underscore
Must be unique across your volumes
Examples:
✓ Valid: data-volume-1, ml_datasets, project_storage
✗ Invalid: dv, -data, volume_, my@volume
3
Configure Volume Size
Size Configuration:
Enter size in GB (numeric input)
Use arrow buttons for incremental adjustment
Minimum: 100 GB
Maximum: Depends on storage type
NVMe: 10,000 GB
HDD: 16,000 GB
Best Practices:
Allocate sufficient space for growth
Consider data volume vs file count requirements
NVMe recommended for high-performance workloads
4
Select Storage Type
NVMe (Fast Storage):
Maximum size: 10,000 GB
High-performance SSD storage
Best for: Databases, applications, frequently accessed data
Higher cost per GB
HDD (Standard Storage):
Maximum size: 16,000 GB
Standard hard disk storage
Best for: Backups, archives, infrequently accessed data
Lower cost per GB
5
Add Volume to Configuration
Click "Add Volume" to add the configured volume to your deployment.
Result:
Volume appears in management interface
Configuration can be edited before deployment
Volume will be created when instance deploys

Managing Configured Volumes#

1
Open Management Interface
Click the Manage button in the Volumes section to view all configured data volumes.
2
Review Volume Configuration
Management interface displays:
Volume name and sequential numbering
Storage type (NVMe or HDD)
Configured size in GB
Volume counter (X/10 maximum)
Total storage allocation across all volumes
3
Edit Volume Configuration
For any configured volume:
Edit:
Click "Edit" button
Modify name, size, or storage type
Click "Save" to apply changes
Delete:
Click "Delete" button
Confirm deletion
Volume removed from deployment configuration
4
Close Management
Click "Done" to return to deployment configuration.
Display Updates:
Volume count shown in Volumes section
Total allocated storage displayed
Configuration ready for deployment

Volume Creation Limits#

Volume Count Limits
Storage Size Limits
Naming Restrictions

Attaching Existing Data Volumes#

Attach up to 10 existing data volumes to your deployment. These volumes must be in detached status and in the same region.

Volume Attachment Process#

1
Access Attachment Interface
In the deployment configuration, locate the "Attach Volumes" section and click the Manage button.
2
View Available Volumes
Interface displays volumes eligible for attachment:
Eligible Volumes:
Status: Detached (not attached to any instance)
Region: Same region as deployment
Exclusions: Volume selected as boot source (via OS Images or Volumes tab)
Display Elements:
Search field for filtering by name
Volume name, size, and type
Checkbox for selection
Current selection status
"USED AS BOOT" label if volume is selected as boot source
3
Select Volumes
Selection Method:
Click any eligible volume row to toggle selection
Selected volumes show checkmark and highlight
Click again to deselect
Selection Indicators:
Checkmark appears when selected
Row highlights with selection color
Selection counter updates (X/10)
Restricted Volumes:
Volumes marked "USED AS BOOT" cannot be selected
Cursor shows not-allowed icon on hover
Row appears grayed out with reduced opacity
4
Search and Filter
Use search field to filter volumes:
Enter volume name or partial name
Results filter in real-time
Selected volumes remain selected during search
5
Confirm Selection
Click "Save Changes" to attach selected volumes.
Result:
Selected volumes added to deployment configuration
Attach Volumes section displays count and total size
Volumes will attach when instance deploys

Automatic Volume Exclusion#

The platform automatically prevents dual-purpose volume usage:
When Volume Selected as Boot Source:
Volume automatically disappears from attachable volumes list
If you attempt to view it, shows "USED AS BOOT" label
Selection is disabled (grayed out, not clickable)
Prevents accidental dual attachment
Applies To:
User volumes selected from OS Images dropdown (Advanced tier)
Volumes selected via Volumes tab (all tiers)
Does Not Apply To:
Volumes not selected as boot source
Volumes in different regions
Volumes already attached to other instances

Volume Attachment Restrictions#

Volume Eligibility
Required Conditions:
Volume status: Detached
Volume region: Same as deployment region
Not selected as boot source
Not currently attached to another instance
Volume Types:
Both bootable and non-bootable volumes eligible
NVMe and HDD volumes both supported
Attachment Limits
Maximum Attachments: 10 volumes
Counting Rules:
Attached existing volumes: Count toward limit
Newly created volumes: Count toward limit
Combined total cannot exceed 10
Exclusions:
Boot volume does not count toward limit

Support Resources#

For assistance with boot source configuration:
Email Support
Contact Support Team
Include in your message:
Selected region and deployment tier
Boot source type and configuration
Specific error message or behavior
Screenshots of configuration interface
Account email for verification
Deployment Guide
Deployment Documentation
Complete deployment information:
GPU configuration
Network settings
SSH key management
Startup scripts
Post-deployment configuration
Previous
OS Images
Next
Deploy Instance
Built with