Skip to content
View as Markdown

Represents a Daytona Sandbox instance.

Exposes lifecycle controls and operation facades for process execution, file-system access, and Git.

Properties:

  • process Process - Process execution interface for this Sandbox.
  • fs FileSystem - File-system operations interface for this Sandbox.
  • git Git - Git operations interface for this Sandbox.
  • computerUse ComputerUse - Computer use (desktop automation) interface for this Sandbox.
  • codeInterpreter CodeInterpreter - Stateful code interpreter for this Sandbox (Python).
public LspServer createLspServer(String languageId, String pathToProject)

Creates an LSP server instance for the specified language and project.

Parameters:

  • languageId String - language server to start (e.g. “typescript”, “python”, “go”)
  • pathToProject String - absolute path to the project root inside the sandbox

Returns:

  • LspServer - a new LspServer configured for the given language
public void start()

Starts this Sandbox with default timeout.

Throws:

  • DaytonaException - if the Sandbox fails to start
public void start(long timeoutSeconds)

Starts this Sandbox and waits for readiness.

Parameters:

  • timeoutSeconds long - maximum seconds to wait; 0 disables timeout

Throws:

  • DaytonaException - if start fails or times out
public void stop()

Stops this Sandbox with default timeout.

Throws:

  • DaytonaException - if the Sandbox fails to stop
public void stop(long timeoutSeconds)

Stops this Sandbox and waits until fully stopped.

Parameters:

  • timeoutSeconds long - maximum seconds to wait; 0 disables timeout

Throws:

  • DaytonaException - if stop fails or times out
public void waitUntilStopped(long timeoutSeconds)

Waits until Sandbox reaches stopped (or destroyed) state.

Parameters:

  • timeoutSeconds long - maximum seconds to wait; 0 disables timeout

Throws:

  • DaytonaException - if timeout is invalid, state becomes error, or timeout expires
public void delete()

Deletes this Sandbox with default timeout behavior.

Throws:

  • DaytonaException - if deletion fails
public void delete(long timeoutSeconds)

Deletes this Sandbox.

Parameters:

  • timeoutSeconds long - reserved timeout parameter for parity with other SDKs

Throws:

  • DaytonaException - if deletion fails
public Map<String, String> setLabels(Map<String, String> labels)

Replaces Sandbox labels.

Parameters:

  • labels Map<String, String> - label map to apply

Returns:

  • Map\<String, String\> - updated labels

Throws:

  • DaytonaException - if label update fails
public void setAutostopInterval(int minutes)

Sets Sandbox auto-stop interval.

Parameters:

  • minutes int - idle minutes before automatic stop

Throws:

  • DaytonaException - if the update fails
public void setAutoArchiveInterval(int minutes)

Sets Sandbox auto-archive interval.

Parameters:

  • minutes int - minutes in stopped state before automatic archive

Throws:

  • DaytonaException - if the update fails
public void setAutoDeleteInterval(int minutes)

Sets Sandbox auto-delete interval.

Parameters:

  • minutes int - minutes before automatic deletion after stop

Throws:

  • DaytonaException - if the update fails
public void updateNetworkSettings(UpdateSandboxNetworkSettings settings)

Updates outbound network policy on the runner (block all, restore access, or CIDR allow list).

Parameters:

  • settings UpdateSandboxNetworkSettings - request body; at least one of networkBlockAll or networkAllowList must be set

Throws:

  • DaytonaException - if the update fails
public String getUserHomeDir()

Returns home directory path for Sandbox user.

Returns:

  • String - absolute home directory path

Throws:

  • DaytonaException - if the request fails
public String getWorkDir()

Returns current working directory path.

Returns:

  • String - absolute working directory path

Throws:

  • DaytonaException - if the request fails
public void waitUntilStarted(long timeoutSeconds)

Waits until Sandbox reaches started state.

Parameters:

  • timeoutSeconds long - maximum seconds to wait; 0 disables timeout

Throws:

  • DaytonaException - if timeout is invalid, state becomes failure, or timeout expires
public void refreshData()

Refreshes local Sandbox fields from latest API state. After refresh, all fields — including those not returned by Daytona#list — are populated.

Throws:

  • DaytonaException - if refresh fails
public Sandbox experimentalFork()

Forks this Sandbox, creating a new Sandbox with an identical filesystem. Uses default timeout of 60 seconds.

Returns:

  • Sandbox - the forked Sandbox in started state

Throws:

  • DaytonaException - if the fork operation fails or times out
public Sandbox experimentalFork(String name, long timeoutSeconds)

Forks this Sandbox, creating a new Sandbox with an identical filesystem. The forked Sandbox is a copy-on-write clone of the original.

Parameters:

  • name String - optional name for the forked Sandbox; null for auto-generated
  • timeoutSeconds long - maximum seconds to wait for the forked Sandbox to start; 0 disables timeout

Returns:

  • Sandbox - the forked Sandbox in started state

Throws:

  • DaytonaException - if the fork operation fails or times out
public void experimentalCreateSnapshot(String name)

Creates a snapshot from the current state of this Sandbox. Uses default timeout of 60 seconds.

Parameters:

  • name String - name for the new snapshot

Throws:

  • DaytonaException - if the snapshot operation fails
public void experimentalCreateSnapshot(String name, long timeoutSeconds)

Creates a snapshot from the current state of this Sandbox. The Sandbox will temporarily enter a ‘snapshotting’ state and return to its previous state when complete.

Parameters:

  • name String - name for the new snapshot
  • timeoutSeconds long - reserved timeout parameter for parity with other SDKs

Throws:

  • DaytonaException - if the snapshot operation fails
public void pause() throws DaytonaException

Pauses the Sandbox, freezing all running processes. Uses default timeout of 60 seconds.

Throws:

  • DaytonaException - if the pause operation fails
public void pause(long timeoutSeconds) throws DaytonaException

Pauses the Sandbox, freezing all running processes. The Sandbox will enter a ‘pausing’ state and transition to ‘paused’ when complete.

Parameters:

  • timeoutSeconds long - maximum time to wait in seconds (0 = no timeout)

Throws:

  • DaytonaException - if timeout is negative or the operation fails/times out
public String getId()

Returns:

  • String - Sandbox ID.
public String getName()

Returns:

  • String - Sandbox name.
public String getOrganizationId()

Returns:

  • String - organization ID that owns this Sandbox.
public String getSnapshot()

Returns:

  • String - Daytona snapshot used to create this Sandbox, or null if none.
public String getUser()

Returns:

  • String - OS user running in the Sandbox.
public Map<String, String> getLabels()

Returns:

  • Map\<String, String\> - custom labels attached to the Sandbox.
public Boolean getPublic()

Returns:

  • Boolean - whether the Sandbox HTTP preview is publicly accessible.
public String getTarget()

Returns:

  • String - target region/environment where the Sandbox runs.
public int getCpu()

Returns:

  • int - allocated CPU cores.
public int getGpu()

Returns:

  • int - allocated GPU units.
public int getMemory()

Returns:

  • int - allocated memory in GiB.
public int getDisk()

Returns:

  • int - allocated disk in GiB.
public String getState()

Returns:

  • String - current lifecycle state (e.g. “started”, “stopped”).
public String getErrorReason()

Returns:

  • String - error message if the Sandbox is in an error state, or null.
public Boolean getRecoverable()

Returns:

  • Boolean - whether the Sandbox error is recoverable, or null if unknown.
public String getBackupState()

Returns:

  • String - current state of the Sandbox backup as a string, or null.
public Integer getAutoStopInterval()

Returns:

  • Integer - auto-stop interval in minutes (0 means disabled).
public Integer getAutoArchiveInterval()

Returns:

  • Integer - auto-archive interval in minutes.
public Integer getAutoDeleteInterval()

Returns:

  • Integer - auto-delete interval in minutes (negative means disabled).
public String getCreatedAt()

Returns:

  • String - when the Sandbox was created, or null.
public String getUpdatedAt()

Returns:

  • String - when the Sandbox was last updated, or null.
public String getLastActivityAt()

Returns:

  • String - when the Sandbox last had activity, or null.
public String getToolboxProxyUrl()

Returns:

  • String - toolbox proxy URL.
public Map<String, String> getEnv()

Returns Sandbox environment variables.

Not returned by Daytona#list; call #refreshData() on each item to populate.

Returns:

  • Map\<String, String\> - environment map, or null if not yet populated
public Boolean getNetworkBlockAll()

Returns whether all network access is blocked for this Sandbox.

Not returned by Daytona#list; call #refreshData() on each item to populate.

Returns:

  • Boolean - block-all flag, or null if not yet populated
public String getNetworkAllowList()

Returns the comma-separated CIDR allow list, if any.

Not returned by Daytona#list; call #refreshData() on each item to populate.

Returns:

  • String - allow list, or null
public String getDomainAllowList()

Returns the comma-separated list of allowed domains, if any.

Not returned by Daytona#list; call #refreshData() on each item to populate.

Returns:

  • String - allowed domains, or null
public List<SandboxVolume> getVolumes()

Returns volumes attached to the Sandbox.

Not returned by Daytona#list; call #refreshData() on each item to populate.

Returns:

  • List\<SandboxVolume\> - immutable list of attached volumes, or null if not yet populated
public BuildInfo getBuildInfo()

Returns build information if the Sandbox was created from a dynamic build.

Not returned by Daytona#list; call #refreshData() on each item to populate.

Returns:

  • BuildInfo - build info, or null
public String getBackupCreatedAt()

Returns the creation timestamp of the last backup.

Not returned by Daytona#list; call #refreshData() on each item to populate.

Returns:

  • String - backup timestamp, or null
public Process getProcess()

Returns:

  • Process - process operations facade.
public FileSystem getFs()

Returns:

  • FileSystem - file-system operations facade.
public Git getGit()

Returns:

  • Git - Git operations facade.