---
title: "Get a Project"
description: "Returns one Project and its current lifecycle state in the API key's workspace."
canonical: https://y2.dev/docs/api/reference/projects/getProject/
---

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

# Get a Project

Returns one Project and its current lifecycle state in the API key's workspace.

`GET https://api.y2.dev/api/v1/projects/{projectId}`

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

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `projectId` | path | string | Yes |  |

## Responses

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

### 200 response fields

| Field | Type | Description |
| --- | --- | --- |
| `data` | `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 |  |
