---
title: "List durable source workspaces"
method: GET
path: "/v1/spaces/{spaceId}/source/workspaces"
tags: ["Git"]
---

# List durable source workspaces

`GET /v1/spaces/{spaceId}/source/workspaces`

## Request

- Base URL: `https://api.spacefast.com`
- URL: `https://api.spacefast.com/v1/spaces/{spaceId}/source/workspaces`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://api.spacefast.com/v1/auth/oauth2/authorize`, token URL `https://api.spacefast.com/v1/auth/oauth2/token`; client credentials, token URL `https://api.spacefast.com/v1/auth/oauth2/token`, scopes: `spaces:read`)

List open source workspaces by default. If the Space has no hosted source yet, this returns an empty page. You do not need to connect an external repository. Use the closed status to inspect workspace history. Results are newest first.

## Path parameters

- `spaceId` string, required

## Query parameters

- `limit` integer: Page size.
- `cursor` string: Opaque cursor from the previous page's `nextCursor`.
- `status` 'open' | 'closed': Open includes initializing, active, and conflicted workspaces. Use closed for history.

## Response `200`

Response for status 200

- object
  - `$schema` string, uri: Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.
  - `data` object, required
    - `workspaces` object[], required
      - `id` string, required
      - `spaceId` string, required
      - `repositoryId` string, required
      - `targetBranch` string, required
      - `name` string, required
      - `revision` integer, required
      - `state` 'initializing' | 'active' | 'conflicted' | 'closed', required
      - `baseCommitSha` string, nullable, required
      - `indexCommitSha` string, nullable, required
      - `workingCommitSha` string, nullable, required
      - `headCommitSha` string, nullable, required
      - `originalUploadVersionId` string, nullable, required
      - `hasStagedChanges` boolean, required
      - `hasUnstagedChanges` boolean, required
      - `hasPendingChanges` boolean, required
      - `needsSync` boolean, required
      - `pendingOperationId` string, nullable, required
      - `autoDeploy` boolean, required
      - `createdAt` string, required
      - `updatedAt` string, required
    - `pagination` object, required
      - `nextCursor` string, nullable, required: Opaque cursor for the next page; null when there are no more results.
      - `hasMore` boolean, required: Whether another page exists after this one.

## Other responses

- `default`: Problem details (RFC 9457). Any 4xx/5xx response is one `application/problem+json` document.

---

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