---
title: "Changes to Update project"
method: PATCH
path: "/v1/projects/{project_id}"
---

# Changes to Update project

`PATCH /v1/projects/{project_id}`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 9 of 30 revisions.

- **2026-11-05** `ed671816c468`: 1 info
- **2026-11-05** `247d08b1bc5b`: 1 info
- **2026-09-18** `a83f0776a896`: 1 breaking, 1 warning, 2 info
- **2026-09-17** `63e95b862209`: 1 info
- **2026-09-16** `1eba97261efb`: 2 breaking, 1 info
- **2026-09-15** `82dda6df74b8`: 41 breaking, 14 warning, 54 info
- **2026-09-14** `8539cafd5cb6`: 2 warning, 5 info
- **2026-09-11** `b19e0179b77a`: 1 info
- **2026-09-11** `c7f67a5564ac`: 12 warning, 2 info

## Changes

- **2026-11-05** `ed671816c468`: 1 info
  - added the required property `is_remix` to the response with the `200` status
- **2026-11-05** `247d08b1bc5b`: 1 info
  - added the required property `folder_id` to the response with the `200` status
- **2026-09-18** `a83f0776a896`: 1 breaking, 1 warning, 2 info
  - the `name` request property's minLength was increased from `0` to `1`
  - the `name` request property's maxLength was set to `100`
  - for the `header` request parameter `Lovable-Version`, the format was generalized from `date` to no format
  - added the non-success response with the status `503`
- **2026-09-17** `63e95b862209`: 1 info
  - added the non-success response with the status `404`
- **2026-09-16** `1eba97261efb`: 2 breaking, 1 info
  - removed the required property `creation_status` from the response with the `200` status
  - removed the required property `og_image_url` from the response with the `200` status
  - added the required property `publish_audience_targets` to the response with the `200` status
- **2026-09-15** `82dda6df74b8`: 41 breaking, 14 warning, 54 info
  - removed the enum value `draft` of the request property `visibility`
  - removed the enum value `private` of the request property `visibility`
  - removed the enum value `public` of the request property `visibility`
  - the response property `created_at` became nullable for the status `200`
  - the response property `description` became nullable for the status `200`
  - the response property `detail` became nullable for the status `400`
  - the response property `detail` became nullable for the status `401`
  - the response property `detail` became nullable for the status `402`
  - the response property `detail` became nullable for the status `403`
  - the response property `detail` became nullable for the status `406`
  - the response property `detail` became nullable for the status `429`
  - the response property `detail` became nullable for the status `default`
  - the response property `errors` became nullable for the status `400`
  - the response property `errors` became nullable for the status `401`
  - the response property `errors` became nullable for the status `402`
  - the response property `errors` became nullable for the status `403`
  - the response property `errors` became nullable for the status `406`
  - the response property `errors` became nullable for the status `429`
  - the response property `errors` became nullable for the status `default`
  - the response property `errors/items/location` became nullable for the status `400`
  - the response property `errors/items/location` became nullable for the status `401`
  - the response property `errors/items/location` became nullable for the status `402`
  - the response property `errors/items/location` became nullable for the status `403`
  - the response property `errors/items/location` became nullable for the status `406`
  - the response property `errors/items/location` became nullable for the status `429`
  - the response property `errors/items/location` became nullable for the status `default`
  - the response property `last_edited_at` became nullable for the status `200`
  - the response property `latest_commit_sha` became nullable for the status `200`
  - the response property `latest_screenshot_url` became nullable for the status `200`
  - the response property `name` became nullable for the status `200`
  - the response property `og_image_url` became nullable for the status `200`
  - the response property `preview_url` became nullable for the status `200`
  - the response property `props` became nullable for the status `400`
  - the response property `props` became nullable for the status `401`
  - the response property `props` became nullable for the status `402`
  - the response property `props` became nullable for the status `403`
  - the response property `props` became nullable for the status `406`
  - the response property `props` became nullable for the status `429`
  - the response property `props` became nullable for the status `default`
  - the response property `publish_audience` became nullable for the status `200`
  - …69 more
- **2026-09-14** `8539cafd5cb6`: 2 warning, 5 info
  - removed the optional property `tech_stack` from the response with the `200` status
  - removed the optional property `updated_at` from the response with the `200` status
  - the endpoint scheme security `BearerAuth` was added to the API
  - the endpoint scheme security `LovableAPIKey` was added to the API
  - added the non-success response with the status `400`
  - added the optional property `publish_audience` to the response with the `200` status
  - response property `publish_visibility` deprecated
- **2026-09-11** `b19e0179b77a`: 1 info
  - api operation id `patch-v1-projects-project_id` removed and replaced with `updateProject`
- **2026-09-11** `c7f67a5564ac`: 12 warning, 2 info
  - added the new `completed` enum value to the `status` response property for the response status `200`
  - added the new `draft` enum value to the `visibility` response property for the response status `200`
  - added the new `failed` enum value to the `status` response property for the response status `200`
  - added the new `in_progress` enum value to the `status` response property for the response status `200`
  - added the new `library` enum value to the `project_type` response property for the response status `200`
  - added the new `private` enum value to the `publish_visibility` response property for the response status `200`
  - added the new `private` enum value to the `visibility` response property for the response status `200`
  - added the new `project` enum value to the `project_type` response property for the response status `200`
  - added the new `public` enum value to the `publish_visibility` response property for the response status `200`
  - added the new `public` enum value to the `visibility` response property for the response status `200`
  - added the new `workspace_only` enum value to the `publish_visibility` response property for the response status `200`
  - added the new `workspace_view` enum value to the `visibility` response property for the response status `200`
  - added the new optional `header` request parameter `Lovable-Beta`
  - added the new optional `header` request parameter `Lovable-Version`

---

[Operation](https://skmtc.dev/lovable/apis/lovable-api/docs/v1/projects/:project_id/patch.md) - [API](https://skmtc.dev/lovable/apis/lovable-api.md) - [Page](https://skmtc.dev/lovable/apis/lovable-api/changes/v1/projects/:project_id/patch)
