---
title: "Get all projects on a workspace"
method: GET
path: "/v1/workspaces/{workspaceId}/projects"
tags: ["Project"]
---

# Get all projects on a workspace

`GET /v1/workspaces/{workspaceId}/projects`

## Path parameters

- `workspaceId` string, required — Represents a workspace identifier across the system.

## Query parameters

- `name` string — If provided, you'll get a filtered list of projects that contains the provided string in the project name.
- `strict-name-search` boolean — Flag to toggle on/off strict search mode. When set to true, search by name will only return projects whose name exactly matches the string value given for the 'name' parameter. When set to false, results will also include projects whose name contain the string value, but could be longer than the string value itself. For example, if there is a project with the name 'applications', and the search value is 'app', setting strict-name-search to true will not return that project in the results, whereas setting it to false will.
- `archived` boolean — If provided and set to true, you'll only get archived projects. If omitted, you'll get both archived and non-archived projects.
- `billable` boolean — If provided and set to true, you'll only get billable projects. If omitted, you'll get both billable and non-billable projects.
- `clients` string[] — If provided, you'll get a filtered list of projects that contain clients which match any of the provided ids.
- `contains-client` boolean — If set to true, you'll get a filtered list of projects that contain clients which match the provided id(s) in 'clients' field. If set to false, you'll get a filtered list of projects which do NOT contain clients that match the provided id(s) in 'clients' field.
- `client-status` 'ACTIVE' | 'ARCHIVED' | 'ALL'
- `users` string[] — If provided, you'll get a filtered list of projects that contain users which match any of the provided ids.
- `contains-user` boolean — If set to true, you'll get a filtered list of projects that contain users which match the provided id(s) in 'users' field. If set to false, you'll get a filtered list of projects which do NOT contain users which match the provided id(s) in 'users' field.
- `user-status` 'PENDING' | 'ACTIVE' | 'DECLINED' | 'INACTIVE' | 'ALL'
- `is-template` boolean — Filters projects based on whether they are used as a template or not.
- `sort-column` 'ID' | 'NAME' | 'CLIENT_NAME' | 'DURATION' | 'BUDGET' | 'PROGRESS'
- `sort-order` 'ASCENDING' | 'DESCENDING'
- `hydrated` boolean — If set to true, results will contain additional information about the project.
- `page` integer — Page number.
- `page-size` integer — Page size.
- `access` 'PUBLIC' | 'PRIVATE'
- `expense-limit` integer — Represents the maximum number of expenses to fetch.
- `expense-date` string — If provided, you will get expenses dated before the provided value in yyyy-MM-dd format.
- `userGroups` string[] — If provided, you'll get a filtered list of projects that contain groups which match any of the provided ids.
- `contains-group` boolean — If set to true, you'll get a filtered list of projects that contain groups which match the provided id(s) in 'userGroups' field. If set to false, you'll get a filtered list of projects which do NOT contain groups which match the provided id(s) in 'userGroups' field.

## Response `200`

OK

- ProjectDtoV1[]
  - `archived` boolean — Indicates whether project is archived or not.
  - `billable` boolean — Indicates whether project is billable or not.
  - `budgetEstimate` EstimateWithOptionsDto — Represents a project budget estimate object.
    - `active` boolean
    - `estimate` integer — Represents an estimate as long.
    - `includeExpenses` boolean — Indicates whether estimate includes non-billable or not.
    - `resetOption` 'WEEKLY' | 'MONTHLY' | 'YEARLY' — Represents a reset option enum.
    - `type` 'AUTO' | 'MANUAL' — Represents an estimate type enum.
  - `color` string — Color format ^#(?:[0-9a-fA-F]{6}){1}$. Explanation: A valid color code should start with '#' and consist of six hexadecimal characters, representing a color in hexadecimal format. Color value is in standard RGB hexadecimal format.
  - `costRate` RateDtoV1 — Represents cost rate object.
    - `amount` integer — Represents an amount as integer.
    - `currency` string — Represents a currency.
  - `duration` string — Represents project duration in milliseconds.
  - `estimate` EstimateDtoV1 — Represents a project estimate object.
    - `estimate` string — Represents a task duration estimate.
    - `type` 'AUTO' | 'MANUAL' — Represents an estimate type enum.
  - `hourlyRate` RateDtoV1 — Represents cost rate object.
    - `amount` integer — Represents an amount as integer.
    - `currency` string — Represents a currency.
  - `id` string — Represents project identifier across the system.
  - `memberships` MembershipDtoV1[] — Represents a list of membership objects.
    - `costRate` RateDtoV1 — Represents cost rate object.
      - `amount` integer — Represents an amount as integer.
      - `currency` string — Represents a currency.
    - `hourlyRate` HourlyRateDtoV1 — Represents an hourly rate object.
      - `amount` integer — Represents an amount as integer.
      - `currency` string — Represents a currency.
    - `membershipStatus` 'PENDING' | 'ACTIVE' | 'DECLINED' | 'INACTIVE' | 'ALL' — Represents a membership status enum.
    - `membershipType` 'WORKSPACE' | 'PROJECT' | 'USERGROUP' — Represents membership type enum.
    - `targetId` string — Represents target identifier across the system.
    - `userId` string — Represents user identifier across the system.
  - `name` string — Represents a project name.
  - `note` string — Represents project note.
  - `public` boolean — Indicates whether project is public or not.
  - `template` boolean — Indicates whether project is a template or not.
  - `timeEstimate` TimeEstimateDto — Represents a project time estimate object.
    - `active` boolean
    - `estimate` string — Represents project duration in milliseconds.
    - `includeNonBillable` boolean
    - `resetOption` 'WEEKLY' | 'MONTHLY' | 'YEARLY' — Represents a reset option enum.
    - `type` 'AUTO' | 'MANUAL' — Represents an estimate type enum.
  - `workspaceId` string — Represents workspace identifier across the system.

---

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