---
title: "List Sandboxes"
method: GET
path: "/api/v1/sandboxes"
tags: ["Sandboxes"]
---

# List Sandboxes

`GET /api/v1/sandboxes`

Lists Fabro-managed sandboxes directly from configured sandbox providers.

## Response `200`

Provider-backed sandbox inventory

- SandboxListResponse — Non-paginated provider-backed sandbox inventory response.
  - `data` SandboxInfo[], required
    - `provider` 'local' | 'docker' | 'daytona', required — Sandbox provider discriminator.
    - `id` string, required — Provider-native sandbox id.
    - `display_name` string, nullable — Provider display name when distinct from the native id.
    - `state` 'unknown' | 'provisioning' | 'starting' | 'running' | 'stopping' | 'stopped' | 'paused' | 'deleting' | 'deleted' | 'archived' | 'restoring' | 'resizing' | 'error', required — Normalized sandbox lifecycle state used by the control plane and UI. The original provider-specific state string is preserved in `native_state`.
    - `native_state` string, nullable — Original provider state string before normalization. Display/debugging only; UI behavior keys off `state`.
    - `image` string, nullable — Provider image when surfaced by the sandbox provider.
    - `snapshot` string, nullable — Provider snapshot when surfaced by the sandbox provider.
    - `region` string, nullable — Provider region or target. Null for local-style providers.
    - `web_url` string, nullable — Provider dashboard URL for this sandbox when available.
    - `working_directory` string, nullable — Provider-reported or Fabro-default working directory when available.
    - `resources` SandboxResources, required — Resource configuration for a sandbox. Fields are nullable when the provider does not surface a value or no limit is configured.
      - `cpu_cores` number, double — Configured CPU cores. Null when unavailable.
      - `memory_bytes` integer — Memory limit in bytes. Null when unavailable or unlimited.
      - `disk_bytes` integer — Disk size in bytes. Null when unavailable.
    - `network` SandboxNetwork, required — Provider-neutral public-network policy for sandbox egress and ingress.
      - `egress` SandboxNetworkPolicy, required — Public-network policy for one direction.
        - `mode` 'unknown' | 'open' | 'blocked' | 'cidr_allow_list' | 'essentials_only', required — Provider-neutral public-network policy for one direction.
        - `cidrs` string[], required — CIDR entries when `mode` is `cidr_allow_list`; empty for other modes.
      - `ingress` SandboxNetworkPolicy, required — Public-network policy for one direction.
        - `mode` 'unknown' | 'open' | 'blocked' | 'cidr_allow_list' | 'essentials_only', required — Provider-neutral public-network policy for one direction.
        - `cidrs` string[], required — CIDR entries when `mode` is `cidr_allow_list`; empty for other modes.
    - `labels` object, required — Provider-reported labels.
    - `timestamps` SandboxTimestamps, required — Lifecycle timestamps for a sandbox. Fields are nullable when the provider does not surface a value.
      - `created_at` string, date-time — When the sandbox was created.
      - `last_activity_at` string, date-time — Most recent activity timestamp reported by the provider.
  - `meta` SandboxListMeta, required — Metadata for provider-backed sandbox inventory.
    - `provider_errors` SandboxProviderLookupError[], required
      - `provider` 'local' | 'docker' | 'daytona', required — Sandbox provider discriminator.
      - `message` string, required

---

[API](https://skmtc.net/fabro-sh/apis/fabro-run-api.md) · [All operations](https://skmtc.net/fabro-sh/apis/fabro-run-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fabro-sh/fabro-run-api/versions/bee030053823/schema)
