---
title: "Changes to Get all projects in a space"
method: GET
path: "/v1/spaces/{spaceId}/projects"
---

# Changes to Get all projects in a space

`GET /v1/spaces/{spaceId}/projects`

> Every recorded change to this endpoint, newest first.

## Timeline

Changed in 2 of 10 revisions.

- **2026-08-15** `2e610947dac4` — 1 warning, 21 info
- **2026-08-08** `237f5bbd4029` — 2 breaking, 6 info

## Changes

- **2026-08-15** `2e610947dac4` — 1 warning, 21 info
  - removed the optional property `data/projects/items/totalCost` from the response with the `200` status
  - added the optional property `data/projects/items/actualCost` to the response with the `200` status
  - added the optional property `data/projects/items/alertThresholdPercent` to the response with the `200` status
  - added the optional property `data/projects/items/capUsedPercent` to the response with the `200` status
  - added the optional property `data/projects/items/contractValue` to the response with the `200` status
  - added the optional property `data/projects/items/margin` to the response with the `200` status
  - added the optional property `data/projects/items/marginPercent` to the response with the `200` status
  - added the optional property `data/projects/items/nteCapHours` to the response with the `200` status
  - added the optional property `data/projects/items/overageHours` to the response with the `200` status
  - added the optional property `data/projects/items/projectType` to the response with the `200` status
  - added the optional property `data/projects/items/projectTypeLocked` to the response with the `200` status
  - added the optional property `data/projects/items/retainerBudgetPeriod` to the response with the `200` status
  - added the optional property `data/projects/items/retainerBudgetUsedPercent` to the response with the `200` status
  - added the optional property `data/projects/items/retainerBudgetedHours` to the response with the `200` status
  - added the optional property `data/projects/items/retainerCountCostMode` to the response with the `200` status
  - added the optional property `data/projects/items/retainerCountHoursMode` to the response with the `200` status
  - added the optional property `data/projects/items/retainerCycleAnchor` to the response with the `200` status
  - added the optional property `data/projects/items/retainerFee` to the response with the `200` status
  - added the optional property `data/projects/items/retainerOverageHours` to the response with the `200` status
  - added the optional property `data/projects/items/retainerTotalCost` to the response with the `200` status
  - added the optional property `data/projects/items/spentPercent` to the response with the `200` status
  - added the optional property `data/projects/items/thresholdAlertRecipients` to the response with the `200` status
- **2026-08-08** `237f5bbd4029` — 2 breaking, 6 info
  - for the `query` request parameter `page`, default value `0` was added
  - for the `query` request parameter `size`, default value `20` was added
  - for the `query` request parameter `page`, the type/format was generalized from `integer`/`int32` to `integer`/``
  - for the `query` request parameter `size`, the type/format was generalized from `integer`/`int32` to `integer`/``
  - added the optional property `data/projects/items/actualHours` to the response with the `200` status
  - added the optional property `data/projects/items/billableHours` to the response with the `200` status
  - added the optional property `data/projects/items/budgetedHours` to the response with the `200` status
  - added the optional property `data/projects/items/nonBillableHours` to the response with the `200` status

---

[Operation](https://skmtc.dev/astravue/apis/astravue-api/docs/v1/spaces/:spaceId/projects/get.md) · [API](https://skmtc.dev/astravue/apis/astravue-api.md) · [Page](https://skmtc.dev/astravue/apis/astravue-api/changes/v1/spaces/:spaceId/projects/get)
