---
title: "List owned Projects"
description: "Lists owner-private Projects in the API key workspace. Results are bounded, ordered by recent activity, and traversable with an opaque cursor."
canonical: https://y2.dev/docs/api/reference/projects/listProjects/
---

Endpoint Reference[Projects](https://y2.dev/docs/api/reference/projects)

# List owned Projects

Lists owner-private Projects in the API key workspace. Results are bounded, ordered by recent activity, and traversable with an opaque cursor.

`GET https://api.y2.dev/api/v1/projects`

- Operation ID: `listProjects`
- Required scopes: `projects:read`
- Contract: https://y2.dev/openapi.json

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `cursor` | query | string | No | Opaque continuation token from the previous response. Bound to the original filters and ordering. |
| `status` | query | `ProjectStatus` | No |  |
| `limit` | query | integer | No |  |

## Responses

| Status | Description | Body |
| --- | --- | --- |
| 200 | Bounded Project list | `ProjectListResponse` |
| 400 | Invalid request parameters |  |
| 401 | Missing or invalid API key |  |
| 403 | Insufficient permissions or access denied |  |
| 429 | Rate limit exceeded (per-key or per-account aggregate) |  |
| 500 | Internal server error |  |

### 200 response fields

| Field | Type | Description |
| --- | --- | --- |
| `data[]` | array of `Project` |  |
| `data[].id` | string |  |
| `data[].type` | string |  |
| `data[].name` | string |  |
| `data[].objective` | string or null |  |
| `data[].instructions` | string or null |  |
| `data[].status` | `ProjectStatus` |  |
| `data[].contextPolicy` | string |  |
| `data[].icon` | string or null |  |
| `data[].color` | string or null |  |
| `data[].revision` | integer |  |
| `data[].defaultView` | `graph`, `timeline`, `situation`, `reports`, `evidence`, `knowledge` |  |
| `data[].defaultTimeWindow` | `24h`, `7d`, `30d`, `custom` |  |
| `data[].pinned` | boolean |  |
| `data[].lastActivityAt` | string (date-time) |  |
| `data[].createdAt` | string (date-time) |  |
| `data[].updatedAt` | string (date-time) |  |
| `data[].links` | object |  |
| `meta` | object |  |
| `meta.count` | integer |  |
| `meta.pageCount` | integer |  |
| `meta.limit` | integer |  |
| `meta.isDone` | boolean |  |
| `meta.hasMore` | boolean |  |
| `meta.nextCursor` | string or null |  |
| `meta.asOf` | string (date-time) |  |
| `meta.page` | `PublicPageMeta` |  |
| `meta.status` | `ProjectStatus` |  |
| `links` | `PublicCollectionLinks` |  |
| `links.self` | string |  |
| `links.next` | string or null |  |
