---
title: "Read workspace environment and storage limits"
method: GET
path: "/v1/research-workspaces/capabilities"
tags: ["Research workspaces"]
---

# Read workspace environment and storage limits

`GET /v1/research-workspaces/capabilities`

## Request

- Base URL: `/` (relative, and the document was published on a file host, not at the API’s origin)
- URL: `/v1/research-workspaces/capabilities`
- Auth: HTTP bearer

Requires a Bearer API key or console session. Reports deployment configuration and accepted request counts, not qualified GPU inventory, live capacity or a price quote.

## Response `200`

Workspace configuration capabilities

- ResearchWorkspaceCapabilities
  - `standalone_instances` boolean: Qualified direct compute is available for SSH-only standalone instances. Availability and account funding are rechecked at launch.
  - `runtimes` object[]: Qualified workspace images visible to the authenticated team. These select container userspace, not the host kernel. Registry references and other teams' custom images are not exposed.
    - `id` string, required
    - `name` string, required
    - `os` 'ubuntu-22.04' | 'ubuntu-24.04' | 'debian-12' | 'debian-13', required
    - `os_name` string, required
    - `environment` 'pytorch-cuda' | 'pytorch-rocm' | 'pytorch-cpu' | 'custom-cuda' | 'custom-rocm' | 'custom-cpu', required
    - `custom` boolean, required
  - `available` boolean, required: Whether workspace configuration and browser access are enabled on this deployment. Not a guarantee of qualified hardware, live capacity or successful admission.
  - `storage_limit_bytes` integer, required: Configured project capacity limit in bytes.
  - `storage_policy_version` string: The value r2-standard-10gb-account-v1 shares a free decimal 10 GB allowance across the account, with storage-only overage at the server-reported rate. The older included-10gb-v1 policy retains its per-workspace allowance. Both retain a 10 GB per-workspace operational limit. Empty or absent retains existing storage behavior.
  - `environments` object[], required
    - `id` 'pytorch-cuda' | 'pytorch-rocm' | 'pytorch-cpu', required
    - `name` string, required
    - `description` string, required
  - `gpu_counts` integer[], required: Accepted single-machine request counts. This is not a per-model qualification or availability inventory.
  - `cpu_instances` boolean: A qualified CPU image and direct CPU lifecycle are enabled. Availability is checked for each requested vCPU count.
  - `host_resource_configuration` boolean: Direct workspace compute can enforce custom vCPU and system RAM requirements.
  - `qualified_gpu_configurations` object[]: Canonical GPU model and count pairs qualified for the deployment's exact active image and runtime artifacts. An empty array means no configuration is currently qualified. This is not live capacity or a price quote. Older servers may omit this field. Existing saved configurations remain readable even when absent from this list.
    - `gpu` string, required: Qualified canonical GPU model.
    - `gpu_count` 1 | 2 | 4 | 8, required
  - `editors` string[], required: Supported development tool choices for a new workspace.
  - `browser_available` boolean, required: Whether browser connection infrastructure is currently available. Individual connections still require current session and tool readiness.
  - `workload_submission` boolean, required: Whether this deployment supports submitting an independent workload from a saved or running workspace.
  - `workload_source_limit_bytes` integer, required: Maximum saved-project payload bytes supported by workspace source preparation. The full-capacity path supports 10,000,000,000 bytes with separate bounded archive metadata. Ordinary asset import limits are unchanged.
  - `account_funded_sessions` boolean: Whether sessions use account funding without a per-session spending cap. Account credit and spending controls apply, and a session runs until it is stopped. Older servers may omit this capability, which clients must treat as false.
  - `deletion_available` boolean: Whether stopped workspace and instance deletion is supported. Clients treat an omitted capability as false. Deletion can be available while new compute launches are disabled.

## Other responses

- `default`: Authentication, rate limits and transient failures apply.

## Changes

- **2026-10-01** `50087398f13a`: 1 info
  - added the optional property `deletion_available` to the response with the `200` status
- **2026-10-01** `ba84c74aeec8`: 2 warning, 4 info
  - added the new `pytorch-cpu` enum value to the `environments/items/id` response property for the response status `200`
  - added the new `pytorch-rocm` enum value to the `environments/items/id` response property for the response status `200`
  - added the optional property `cpu_instances` to the response with the `200` status
  - added the optional property `host_resource_configuration` to the response with the `200` status
  - …2 more
- **2026-10-01** `544fef290a54`: 5 warning, 2 info
  - removed the optional property `cpu_instances` from the response with the `200` status
  - removed the optional property `deletion_available` from the response with the `200` status
  - removed the optional property `host_resource_configuration` from the response with the `200` status
  - removed the optional property `runtimes` from the response with the `200` status
  - …3 more
- **2026-09-28** `0f5f8791ef8b`: 1 info
  - added the optional property `deletion_available` to the response with the `200` status
- **2026-09-28** `2bc35a326af3`: 1 warning
  - removed the optional property `deletion_available` from the response with the `200` status

[Operation history](https://skmtc.dev/nodus-compute/apis/nodus-infrastructure-execution-api/changes/v1/research-workspaces/capabilities/get.md)

---

[API](https://skmtc.dev/nodus-compute/apis/nodus-infrastructure-execution-api.md) - [All operations](https://skmtc.dev/nodus-compute/apis/nodus-infrastructure-execution-api/llms.txt) - [OpenAPI document](https://skmtc.dev/nodus-compute/apis/nodus-infrastructure-execution-api/revisions/a59210899d95?raw)
