---
title: "List Prepared Workspaces"
method: GET
path: "/api/v1/console/evals/prepared-workspaces"
tags: ["evals"]
---

# List Prepared Workspaces

`GET /api/v1/console/evals/prepared-workspaces`

## Request

- Base URL: `https://ndi-api.nace.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://ndi-api.nace.ai/api/v1/console/evals/prepared-workspaces`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/nace/apis/ndi-service/docs/api/v1/console/evals/prepared-workspaces/get.ts> (a function with typed inputs; its response is checked against the schema)

Corpus workspaces samples attach to, and the ones still missing.

In the CLI this registry is a gitignored file on one laptop. Here it is a
table, so every eval worker and the console agree on which corpora exist.

## Headers

- `x-api-key` string, nullable

## Response `200`

Successful Response

- EvalPreparedWorkspaceListResponse
  - `workspaces` EvalPreparedWorkspace[], required
    - `name` string, required: Portable name without the scheme: `techqa` for `ndi://techqa`.
    - `reference` string, required: What a sample's `workspace.prepared` carries: `ndi://techqa`.
    - `workspace_id` string, uuid, required
    - `base_url` string, required
    - `file_count` integer, required
    - `provisioned_by_email` string, nullable
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, nullable
  - `missing` EvalMissingPreparedWorkspace[], required: Corpora the catalog's samples ask for that nothing has provisioned yet.
    - `name` string, required: Portable name without the scheme: `techqa` for `ndi://techqa`.
    - `reference` string, required: What a sample's `workspace.prepared` carries: `ndi://techqa`.
    - `candidates` string[]: Sources the samples name, best first. More than one means the samples disagree — confirm before using.
    - `suggested_source` string, nullable: The ranked-first candidate, or a builder name when the corpus is rebuilt rather than fetched.
    - `builder` string, nullable: Registered builder that can rebuild this corpus from upstream, when one exists.
    - `sample_ids` string[]: Samples blocked on this corpus.
    - `status` string, nullable: Latest provisioning attempt: `running` | `failed`. Null when nothing has been tried.
    - `error` string, nullable: Why the last attempt failed.

## Other responses

- `400`: Bad Request
- `401`: Missing or invalid bearer token.
- `402`: Payment Required
- `403`: An API key was sent, the account is not Nace staff, or it is disabled.
- `404`: No console account for this identity — sign in first.
- `409`: Conflict
- `413`: Request Entity Too Large
- `422`: Unprocessable Entity
- `500`: Internal Server Error
- `503`: The eval harness or its worker queue is not available on this deployment.

---

[API](https://skmtc.dev/nace/apis/ndi-service.md) - [All operations](https://skmtc.dev/nace/apis/ndi-service/llms.txt) - [OpenAPI document](https://skmtc.dev/nace/apis/ndi-service/revisions/d9d1f8ec2207?raw)
