Skip to content

Regions

View as Markdown

Every Daytona sandbox runs in a region: a geographic or logical grouping of compute infrastructure. When creating a sandbox, you can target a specific region, and Daytona schedules the workload on available capacity within that region.

Daytona organizes regions in a four-level placement hierarchy:

LevelDescription
GlobalThe root, with ID: earth.
GeoGroups of macro regions that do not impose a geographic constraint.
MacroOne macro region per workload cell; every macro region belongs to one geo group.
EdgeThe regions where runners place sandboxes; belongs to one macro region.

Every listed region is a valid region selector. A broad selector (global, geo, or macro) lets Daytona choose an edge region beneath it. A broad region whose edge regions all opt out of automatic placement stays listed but cannot be named in a create request. A listed region describes topology, not capacity: a create request can still fail for lack of capacity or matching hardware.

Regions managed by Daytona and available to all organizations:

RegionTargetLevel
EarthearthGlobal
United StatesusGeo
EuropeeuGeo
from daytona import Daytona
daytona = Daytona()
# Create a sandbox in the US region
sandbox = daytona.v2.create(region="us")

Dedicated regions are managed by Daytona and provisioned exclusively for an organization. The infrastructure is not shared with other organizations.

Custom regions run on compute that your organization provides. Daytona provisions the region and you enroll your own runner nodes through bring your own compute (BYOC) to control data locality, compliance, and infrastructure configuration, and scale capacity independently.

List regions. The list contains the regions available to you at every level, from the global root down to edge regions, as one flat list. Each region names its parent, and parents come before their children, so a client can rebuild the hierarchy from the list. Edge regions that cannot be used are left out, and so are broader regions with no listed edge region beneath them.

Terminal window
# Regions available to the current project
daytona region list

The response contains regions, one entry per region:

FieldDescription
idRegion ID. Valid as a region selector.
nameDisplay name.
levelglobal, geo, macro, or edge.
parent_region_idID of the parent region. null for the global root, earth.
availableWhether a create request can name this region. Always true for an edge region. false for a broader region whose edge regions all opt out of automatic placement.
api_base_urlEdge regions only. The API base URL of the edge region, when it publishes its own.