> ## Documentation Index
> Fetch the complete documentation index at: https://docs.runaether.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# List All Workspaces

> List all workspaces for the authenticated user

Returns all workspaces across all projects for the authenticated user.

## Authentication

Requires a valid Bearer token.

## Response

<ResponseField name="workspaces" type="array">
  List of workspace objects.

  <Expandable title="Workspace object">
    <ResponseField name="id" type="string" required>
      Unique workspace identifier (UUID).
    </ResponseField>

    <ResponseField name="project_id" type="string" required>
      ID of the parent project.
    </ResponseField>

    <ResponseField name="status" type="string" required>
      Current workspace status: `creating`, `starting`, `running`, `stopping`, `stopped`, `error`.
    </ResponseField>

    <ResponseField name="hardware" type="object" required>
      Hardware configuration.
    </ResponseField>

    <ResponseField name="keep_active" type="boolean" required>
      Whether the workspace should stay running when idle.
    </ResponseField>

    <ResponseField name="machine_id" type="string">
      Machine ID when provisioned.
    </ResponseField>

    <ResponseField name="private_ip" type="string">
      Private IP address within the internal network.
    </ResponseField>

    <ResponseField name="git_ref" type="string">
      Current git reference in the workspace.
    </ResponseField>

    <ResponseField name="preview_token" type="string">
      Token for accessing workspace preview URLs.
    </ResponseField>

    <ResponseField name="error_message" type="string">
      Error details if status is `error`.
    </ResponseField>

    <ResponseField name="created_at" type="string" required>
      ISO 8601 timestamp.
    </ResponseField>

    <ResponseField name="updated_at" type="string" required>
      ISO 8601 timestamp.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json 200 theme={null}
  {
    "workspaces": [
      {
        "id": "b2c3d4e5-6789-01ab-cdef-234567890abc",
        "project_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
        "status": "running",
        "hardware": {
          "cpu_kind": "shared",
          "cpus": 2,
          "memory_mb": 2048,
          "volume_size_gb": 10,
          "gpu_kind": null
        },
        "keep_active": false,
        "machine_id": "d8901234abcd",
        "private_ip": "10.0.0.2",
        "git_ref": "main",
        "preview_token": "ptk_abc123",
        "error_message": null,
        "created_at": "2025-01-15T10:30:00Z",
        "updated_at": "2025-01-15T11:00:00Z"
      }
    ]
  }
  ```
</ResponseExample>

## Errors

| Status | Description                             |
| ------ | --------------------------------------- |
| `401`  | Unauthorized — missing or invalid token |
