---
title: "List Corpus Counties"
method: GET
path: "/api/v1/project/sandbox/corpus-counties"
tags: ["project"]
---

# List Corpus Counties

`GET /api/v1/project/sandbox/corpus-counties`

Counties the picker may offer beyond the granted ones.

A county staff suspended is left out: creating a project on it is refused,
so offering it would only fail on click.

503 when national coverage applies but this environment has no corpus to
ask, rather than an empty list that would read as "the corpus holds
nothing". The picker then offers the granted counties only.

The profile response carries this same list whenever the listing is already
held, so this route answers the loads that arrive on a cold one — and its
read is what leaves the listing held for them. Both paths subtract the
withheld set through one function, so neither can drift from the other.

## Response `200`

Successful Response

- SandboxCorpusCountiesResponse — Counties this workspace's national coverage may open a project on. Empty for a workspace without national coverage over the shared corpus; its counties are the profile's ``allowed_geographies``.
  - `county_fips` string[], required

## Changes

- **2026-09-18** `73f618ba0a7e` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/maia-analytics/apis/maia-api/changes/api/v1/project/sandbox/corpus-counties/get.md)

---

[API](https://skmtc.dev/maia-analytics/apis/maia-api.md) · [All operations](https://skmtc.dev/maia-analytics/apis/maia-api/llms.txt) · [OpenAPI document](https://skmtc.dev/maia-analytics/apis/maia-api/revisions/bb508e935174?raw)
