Skip to content
View as Markdown

DaytonaError

class DaytonaError(Exception)

Base error for Daytona SDK.

Example:

try:
sandbox = daytona.get("missing-sandbox")
except DaytonaError as exc:
print(exc.status_code)
print(exc.error_code)
print(exc.message)

Attributes:

  • message str - Error message
  • status_code int | None - HTTP status code if available
  • error_code str | None - Machine-readable error code if available
  • headers dict[str, Any] - Response headers

DaytonaError.__init__

def __init__(message: str,
status_code: int | None = None,
headers: Mapping[str, Any] | None = None,
error_code: str | None = None)

Initialize Daytona error.

Arguments:

  • message str - Error message
  • status_code int | None - HTTP status code if available
  • headers Mapping[str, Any] | None - Response headers if available
  • error_code str | None - Machine-readable error code if available

DaytonaNotFoundError

class DaytonaNotFoundError(DaytonaError)

Error for when a resource is not found (HTTP 404).

Example:

try:
sandbox.fs.download_file("/workspace/missing.txt")
except DaytonaNotFoundError as exc:
print(exc.status_code)

DaytonaAuthenticationError

class DaytonaAuthenticationError(DaytonaError)

Error for when authentication fails (HTTP 401).

Example:

try:
daytona.list()
except DaytonaAuthenticationError as exc:
print(exc.status_code)

DaytonaAuthorizationError

class DaytonaAuthorizationError(DaytonaError)

Error for when the request is forbidden (HTTP 403).

Example:

try:
daytona.get("sandbox-without-access")
except DaytonaAuthorizationError as exc:
print(exc.message)

DaytonaRateLimitError

class DaytonaRateLimitError(DaytonaError)

Error for when rate limit is exceeded (HTTP 429).

Example:

try:
daytona.list()
except DaytonaRateLimitError as exc:
print(exc.error_code)

DaytonaConflictError

class DaytonaConflictError(DaytonaError)

Error for when a resource conflict occurs (HTTP 409).

Example:

try:
params = CreateSandboxFromSnapshotParams(name="existing-sandbox")
daytona.create(params)
except DaytonaConflictError as exc:
print(exc.error_code)

DaytonaValidationError

class DaytonaValidationError(DaytonaError)

Error for when input validation fails (HTTP 400 or client-side validation).

Example:

try:
Image.debian_slim("3.8")
except DaytonaValidationError as exc:
print(exc.message)

DaytonaTimeoutError

class DaytonaTimeoutError(DaytonaError)

Error for when a timeout occurs.

Example:

try:
sandbox.wait_for_sandbox_start(timeout=1)
except DaytonaTimeoutError as exc:
print(exc.message)

DaytonaConnectionError

class DaytonaConnectionError(DaytonaError)

Error for when a network connection fails.

Example:

try:
pty_handle.wait_for_connection()
except DaytonaConnectionError as exc:
print(exc.message)

error_class_from_status_code

def error_class_from_status_code(
status_code: int | None) -> type[DaytonaError]

Map an HTTP status code to the corresponding DaytonaError subclass.

create_daytona_error

def create_daytona_error(message: str,
status_code: int | None = None,
headers: Mapping[str, Any] | None = None,
error_code: str | None = None) -> DaytonaError

Create the appropriate DaytonaError subclass from structured error metadata.