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

# List Projects

`GET /api/projects`

## Request

- Base URL: `https://keep.md`
- URL: `https://keep.md/api/projects`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `keep.session_token`

List Projects.

## Query parameters

- `includeArchived` boolean

## Headers

- `Keep-API-Version` string

## Response `200`

Projects

- object
  - `projects` Project[], required
    - `id` string, required
    - `name` string, required
    - `slug` string, required
    - `description` string
    - `color` string
    - `state` 'active' | 'paused' | 'completed', required
    - `repositories` ProjectRepository[], required
      - `id` string, required
      - `provider` string, required
      - `url` string, uri, required
      - `owner` string
      - `name` string
      - `defaultBranch` string
    - `noteCount` integer, required
    - `itemCount` integer, required
    - `createdAt` integer, required
    - `updatedAt` integer, required
    - `archivedAt` integer, nullable

## Other responses

- `400`: Invalid request
- `401`: Authentication required
- `403`: The credential lacks access or the plan does not include the feature

---

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