Skip to content

VolumeService

Service for managing Daytona Volumes.

This service provides methods to list, get, create, and delete Volumes.

Constructors

new VolumeService()

new VolumeService(volumesApi: VolumesApi): VolumeService

Parameters:

  • volumesApi VolumesApi

Returns:

  • VolumeService

Methods

create()

create(name: string): Promise<Volume>

Creates a new Volume with the specified name.

Parameters:

  • name string - Name for the new Volume

Returns:

  • Promise<Volume> - The newly created Volume

Throws:

If the Volume cannot be created

Example:

const daytona = new Daytona();
const volume = await daytona.volume.create("my-data-volume");
console.log(`Created volume ${volume.name} with ID ${volume.id}`);

delete()

delete(volume: Volume): Promise<void>

Deletes a Volume.

Parameters:

  • volume Volume - Volume to delete

Returns:

  • Promise<void>

Throws:

If the Volume does not exist or cannot be deleted

Example:

const daytona = new Daytona();
const volume = await daytona.volume.get("volume-name");
await daytona.volume.delete(volume);
console.log("Volume deleted successfully");

get()

get(name: string, create: boolean): Promise<Volume>

Gets a Volume by its name.

Parameters:

  • name string - Name of the Volume to retrieve
  • create boolean = false - Whether to create the Volume if it does not exist

Returns:

  • Promise<Volume> - The requested Volume

Throws:

If the Volume does not exist or cannot be accessed

Example:

const daytona = new Daytona();
const volume = await daytona.volume.get("volume-name", true);
console.log(`Volume ${volume.name} is in state ${volume.state}`);

list()

list(): Promise<Volume[]>

Lists all available Volumes.

Returns:

  • Promise<Volume[]> - List of all Volumes accessible to the user

Example:

const daytona = new Daytona();
const volumes = await daytona.volume.list();
console.log(`Found ${volumes.length} volumes`);
volumes.forEach(vol => console.log(`${vol.name} (${vol.id})`));

Volume

type Volume = VolumeDto & {
__brand: "Volume";
};

Represents a Daytona Volume which is a shared storage volume for Sandboxes.

Type declaration:

  • \_\_brand “Volume”