---
title: "List Projects"
method: GET
path: "/api/v1/public/projects"
tags: ["Account"]
---

# List Projects

`GET /api/v1/public/projects`

## Request

- Base URL: `https://app.traceroot.ai`
- URL: `https://app.traceroot.ai/api/v1/public/projects`
- Auth: HTTP bearer

List the projects the authenticated user can access, across workspaces.

A user-credential-only discovery op (no ``project_id``). Projects are
flattened across the user's workspaces and tagged with their owning
workspace; the answer is what you pass as ``project_id`` to a project-scoped
request.

Args:
    request (Request): Incoming request (rate-limit plumbing).
    response (Response): Outgoing response (rate-limit plumbing).
    auth (AccountStampedAuth): Account-scope user auth (session token or CLI
        access JWT); carries the resolved ``user_id`` and stamps the per-user
        rate-limit identity.
    workspace_id (str | None): Optional filter; when given, only projects in
        that workspace are returned.

Returns:
    PublicProjectListResponse: The accessible projects (id, name,
        workspace_id, workspace_name, workspace_is_demo).

## Query parameters

- `workspace_id` string, nullable: Restrict the result to projects in this workspace.

## Response `200`

Successful Response

- PublicProjectListResponse: Account-scope discovery: the projects the user can access. Returned by ``list_projects`` — a user-credential-only op. Projects are flattened across the user's workspaces; an optional ``workspace_id`` query narrows the result to one workspace.
  - `data` ProjectListItem[], required
    - `id` string, required
    - `name` string, required
    - `workspace_id` string, required
    - `workspace_is_demo` boolean: True when the project is in the public demo workspace.
    - `workspace_name` string, required

## Other responses

- `401`: Authentication failed
- `422`: Validation Error
- `503`: Authentication service unavailable

---

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