---
title: "Gets list of projects according to (optional) search criteria."
method: GET
path: "/api/v1/project"
tags: ["Project"]
---

# Gets list of projects according to (optional) search criteria.

`GET /api/v1/project`

## Request

- Base URL: `https://api.approval.studio` (the document declares no server; this is the origin it was published from)
- URL: `https://api.approval.studio/api/v1/project`
- Auth: API key in header `Authorization`

## Query parameters

- `ProjectUID` string
- `States` string
- `Query` string
- `IsLoadAssets` boolean
- `IsLoadLastVerAssets` boolean
- `IsLoadTasks` boolean
- `IsLoadRefDocs` boolean
- `IsLoadMetadata` boolean

## Response `200`

OK

- ProjectObjArrayApiResponse
  - `version` string, nullable
  - `statusCode` integer
  - `message` string, nullable
  - `isError` boolean, nullable
  - `responseException` unknown
  - `result` ProjectObj[], nullable
    - `projectId` integer
    - `projectUID` string, nullable
    - `projectState` 0 | 1 | 2 | 3 | 4
    - `name` string, nullable
    - `customer` string, nullable
    - `project` string, nullable
    - `design` string, nullable
    - `revision` string, nullable
    - `description` string, nullable
    - `tags` string[], nullable
    - `dueDate` string, date-time, nullable
    - `reviewStatus` ReviewStatus
      - `pendingCount` integer
      - `approvedCount` integer
      - `rejectedCount` integer
    - `created` string, date-time
    - `assets` object, nullable
    - `tasks` Task[], nullable
      - `taskUID` string, nullable
      - `projectId` integer
      - `projectUID` string, nullable
      - `projectName` string, nullable
      - `clientUID` string, nullable
      - `project` ProjectObj (recursive)
      - `type` 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10
      - `status` 0 | 1 | 2 | 3 | 4
      - `comment` string, nullable
      - `dueDate` string, date-time, nullable
      - `created` string, date-time
      - `closed` string, date-time, nullable
      - `user` User
        - `userUID` string, nullable
        - `fullName` string, nullable
        - `email` string, nullable
        - `role` 0 | 1
        - `profileImageURL` string, nullable
      - `assets` string[], nullable
      - `reviewUrl` string, nullable
      - `requestedAssetName` string, nullable
      - `externalUserEmail` string, nullable
    - `refDocs` RefDoc[], nullable
      - `refDocUID` string, nullable
      - `created` string, date-time
      - `name` string, nullable
      - `fileSize` integer
      - `downloadURL` string, nullable
    - `owners` string[], nullable
    - `template` ProjectTemplate
    - `client` Client
      - `clientID` integer
      - `clientUID` string, nullable
      - `name` string, nullable
      - `status` 0 | 1
      - `clientType` 0 | 1
      - `users` User[], nullable
        - `userUID` string, nullable
        - `fullName` string, nullable
        - `email` string, nullable
        - `role` 0 | 1
        - `profileImageURL` string, nullable
      - `templates` ProjectTemplate[], nullable
      - `kanbanColumns` KanbanColumnResponse[], nullable
        - `kanbanColumnUID` string, nullable
        - `name` string, nullable
      - `folders` FolderResponse[], nullable
        - `folderUID` string, nullable
        - `name` string, nullable
      - `workflows` Workflow[], nullable
        - `workflowUID` string, nullable
        - `name` string, nullable
        - `isActive` boolean
        - `created` string, date-time
    - `metadata` object, nullable
    - `kanbanColumnUID` string, nullable
    - `folderUID` string, nullable
    - `workflow` Workflow
      - `workflowUID` string, nullable
      - `name` string, nullable
      - `isActive` boolean
      - `created` string, date-time

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `500`: Internal Server Error

---

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