---
title: "List all projects"
method: GET
path: "/projects"
tags: ["Projects"]
---

# List all projects

`GET /projects`

List all projects

## Response `200`

successfully returns projects

- object
  - `data` Project[]
    - `id` integer
    - `name` string
    - `tax_year` integer, nullable — Four-digit year parsed from the project name, or null if the name contains no recent year.
    - `idempotency_key` string, nullable
    - `metadata` object
    - `last_uploaded` string, date-time, nullable — When a file was last uploaded to this project, or null if none has been.
    - `updated_at` string, date-time
    - `archived_at` string, date-time, nullable — When the project was archived, or null if it is active.
    - `user` User
      - `id` integer
      - `email` string
      - `first_name` string
      - `last_name` string
      - `idempotency_key` string, nullable
    - `project_status` ProjectStatus
      - `id` integer
      - `name` string
      - `position` integer

## Other responses

- `403` — project not found

## Changes

- **2026-08-08** `7c956b3d1bdf` — 2 breaking, 3 warning, 3 info
  - added `#/components/schemas/ProjectStatus, subschema #2` to the `data/items/project_status` response property `oneOf` list for the response status `200`
  - the `data/items/project_status` response's property type/format changed from `object`/`` to ``/`` for status `200`
  - removed the optional property `data/items/project_status/id` from the response with the `200` status
  - removed the optional property `data/items/project_status/name` from the response with the `200` status
  - …4 more

[Change history](https://skmtc.dev/gettruss/apis/api-v1/changes/projects/get.md)

---

[API](https://skmtc.dev/gettruss/apis/api-v1.md) · [All operations](https://skmtc.dev/gettruss/apis/api-v1/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/gettruss/api-v1/revisions/88923d59dcc5/schema)
