Volumes
Volumes
Manage persistent storage volumes for GPU deployments.
The Volumes API lets you create and manage persistent storage attached to your GPU deployments. Volumes persist independently from deployments — you can delete a GPU instance and keep your data volumes to reuse with future deployments.
Base URL: https://gpu.huddleapis.com/api/v1
Volume Types
| Type | Description | Use Case |
|---|---|---|
| NVMe | High-performance local NVMe SSD | Training datasets, model checkpoints, fast scratch storage |
| NVMe_Shared | Shared NVMe accessible across nodes | Multi-node training with shared data |
| HDD | Standard hard disk storage | Large datasets, archives, backups |
| HDD_Shared | Shared HDD across nodes | Shared bulk storage for multi-node setups |
| NVMe_Local_Storage | Instance-local fast storage | Temporary high-speed scratch space |
| NVMe_Shared_Cluster | Cluster-wide NVMe | Shared fast storage across an entire cluster |
| NVMe_OS_Cluster | OS disk for cluster deployments | Boot volumes for cluster instances |
Create a Volume
curl -X POST -H "X-API-Key: mk_your_key" \
-H "Content-Type: application/json" \
-d '{
"name": "training-data",
"size": 500,
"type": "NVMe",
"location": "FIN-01"
}' \
https://gpu.huddleapis.com/api/v1/volumesResponse:
{
"code": "OK",
"data": {
"id": "vol_abc123",
"name": "training-data",
"size": 500,
"type": "NVMe",
"location": "FIN-01",
"status": "ordered",
"is_os_volume": false,
"contract": "hourly",
"base_hourly_cost": 0.05,
"currency": "USD",
"created_at": "2026-04-03T10:00:00Z"
}
}Volume Lifecycle
| Status | Description |
|---|---|
ordered | Volume creation requested |
attaching | Volume is being attached to a deployment |
attached | Volume is mounted and accessible on the instance |
detached | Volume exists but is not attached to any deployment |
deleted | Volume has been permanently removed |
Attaching Volumes to Deployments
You can attach volumes when creating a deployment:
New volumes created during deployment
{
"cluster_type": "1H100.80S.30V",
"hostname": "my-gpu",
"image": "ubuntu-22.04-cuda-12.4-cluster",
"ssh_key_ids": ["key-id"],
"location": "FIN-01",
"os_volume": {
"name": "boot",
"size": 100
},
"volumes": [
{
"name": "data",
"size": 500,
"type": "NVMe"
}
]
}Reuse existing volumes from a previous deployment
{
"cluster_type": "1H100.80S.30V",
"hostname": "my-gpu",
"image": "ubuntu-22.04-cuda-12.4-cluster",
"ssh_key_ids": ["key-id"],
"location": "FIN-01",
"existing_volumes": ["vol_abc123"]
}Volume billing
Volumes are billed separately from GPU deployments. Storage costs accrue for as long as the volume exists, even when detached. Delete volumes you no longer need to stop charges.
List Volumes
# List all volumes
curl -H "X-API-Key: mk_your_key" \
https://gpu.huddleapis.com/api/v1/volumes
# Filter by status
curl -H "X-API-Key: mk_your_key" \
"https://gpu.huddleapis.com/api/v1/volumes?status=detached"List Volume Types
To see which volume types are supported in a region:
curl -H "X-API-Key: mk_your_key" \
https://gpu.huddleapis.com/api/v1/volume-typesNext Steps
- Learn how to attach volumes in the Deployments guide
- Check Regions to see volume type availability per region
- Review GPU Billing for storage pricing details