---
title: "Update a Project"
method: PUT
path: "/v1/projects/{projectID}"
tags: ["Projects"]
---

# Update a Project

`PUT /v1/projects/{projectID}`

Updates a project's metadata (e.g., name and/or slug). The requester
must be an editor-or-above of the owning team or an admin of its
organization.

## Path parameters

- `projectID` string, uuid, required

## Request body

- UpdateProjectRequest
  - `name` string — Human-readable project name.
  - `slug` string — Normalized identifier, unique within the owning team.

## Response `200`

Project updated successfully

- ProjectResponse
  - `project` Project, required
    - `id` string, uuid, required
    - `owning_team_id` string, uuid, required — The team that owns the project.
    - `name` string, required — Human-readable project name, unique within the owning team.
    - `slug` string, required — Normalized identifier, unique within the owning team.
    - `created_at` string, date-time, required

## Other responses

- `400` — Invalid project id or request body
- `401` — Unauthorized
- `403` — Forbidden (requester is not an editor of the owning team or org admin)
- `404` — Project not found
- `409` — Duplicate project name or slug in team
- `500` — Internal Server Error

---

[API](https://skmtc.net/px0-ai/apis/px0-api.md) · [All operations](https://skmtc.net/px0-ai/apis/px0-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/px0-ai/px0-api/versions/3ed72443989d/schema)
