Creates a new volume. Supports two modes:
- JSON body: Creates an empty volume of the specified size
- Multipart form: Creates a volume pre-populated with content from a tar.gz archive
Parameters
Returns
Create volume
package main
import (
"context"
"fmt"
"github.com/onkernel/hypeman-go"
"github.com/onkernel/hypeman-go/option"
)
func main() {
client := hypeman.NewClient(
option.WithAPIKey("My API Key"),
)
volume, err := client.Volumes.New(context.TODO(), hypeman.VolumeNewParams{
Name: "my-data-volume",
SizeGB: 10,
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", volume.ID)
}
{
"id": "vol-data-1",
"created_at": "2025-01-15T09:00:00Z",
"name": "my-data-volume",
"size_gb": 10,
"attachments": [
{
"instance_id": "inst-abc123",
"mount_path": "/mnt/data",
"readonly": false
}
]
}
Returns Examples
{
"id": "vol-data-1",
"created_at": "2025-01-15T09:00:00Z",
"name": "my-data-volume",
"size_gb": 10,
"attachments": [
{
"instance_id": "inst-abc123",
"mount_path": "/mnt/data",
"readonly": false
}
]
}