---
title: "Rename a project"
method: PATCH
path: "/projects/v1/{project_id}"
tags: ["Projects"]
---

# Rename a project

`PATCH /projects/v1/{project_id}`

## Request

- Base URL: `https://api.run402.com`
- URL: `https://api.run402.com/projects/v1/{project_id}`
- Auth: one of:
  - HTTP bearer
  - API key in header `SIGN-IN-WITH-X`

Updates the project's display name. Authorize-before-reveal: requires an admin-or-above membership on the owning org (or a project:write grant). A non-authorized caller (including a guessed id) gets the same 403 as a real-but-unauthorized project, never a 404 that confirms existence.

## Path parameters

- `project_id` string, required: Run402 project ID. Public IDs are not UUIDs.

## Request body

- object
  - `name` string, required

## Response `200`

Project renamed.

- object
  - `project_id` string: Run402 project ID. Public IDs are not UUIDs.
  - `name` string

## Other responses

- `400`: Invalid name (empty, too long, or control characters).
- `403`: Not authorized for this project action (authorize-before-reveal).

---

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