---
title: "Get project metadata"
method: GET
path: "/api/v2/projects/{projectId}"
tags: ["Projects"]
---

# Get project metadata

`GET /api/v2/projects/{projectId}`

## Request

- Base URL: `https://davinci-app.com`
- URL: `https://davinci-app.com/api/v2/projects/{projectId}`
- Auth: HTTP bearer

Returns the project's stored metadata, including its owner, visibility,
version, storage footprint, and effective collaborators.

Use the permissions endpoint when you need to know what this credential may
do with the project; those are reported separately because they are derived
per credential rather than stored on the project.

## Response `200`

Project metadata.

- GetProjectResponse
  - `metadata` ProjectMetadata, required: Stored project metadata. `ProjectSummary` is this plus the live `inUse` and `activeBranch` fields that only the list endpoint computes.
    - `id` string, required
    - `name` string, required
    - `slug` string, nullable
    - `description` string, nullable
    - `owner` string: User id or organization id that owns the project.
    - `createdBy` string, nullable
    - `visibility` string
    - `version` string
    - `created` string, date-time, nullable
    - `lastModified` string, date-time, nullable
    - `storageUsedBytes` integer
    - `transferState` string, nullable
    - `collaborators` string[]: User ids with effective access, including access inherited from an organization.
    - `pendingCollaborators` string[]

## Other responses

- `401`: No credential was supplied, or the supplied credential is malformed, expired, or revoked. A credential that is present but unusable is never downgraded to an anonymous request.
- `403`: API key lacks a required scope. Error code is `INSUFFICIENT_SCOPES`.
- `404`: The resource does not exist in the parent named by the path, or is hidden from the caller. Absence and privacy denial are deliberately indistinguishable so project, organization, and private-team existence cannot be probed.
- `429`: Request rate exceeded, either globally or for this key.
- `500`: Unexpected server error.

## Changes

- **2026-09-15** (v2) `67c8b8616dbb`: 5 info
  - the `success` response property const value `false` was added for the status `401`
  - the `success` response property const value `false` was added for the status `403`
  - the `success` response property const value `false` was added for the status `404`
  - the `success` response property const value `false` was added for the status `429`
  - …1 more
- **2026-09-15** (v2) `48948af37797`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/celedon-solutions/apis/davinci-public-api/changes/api/v2/projects/:projectId/get.md)

---

[API](https://skmtc.dev/celedon-solutions/apis/davinci-public-api.md) - [All operations](https://skmtc.dev/celedon-solutions/apis/davinci-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/celedon-solutions/apis/davinci-public-api/revisions/279218ca2e8d?raw)
