---
title: "Update project sharing"
method: PATCH
path: "/projects/{projectId}/sharing"
tags: ["Projects"]
---

# Update project sharing

`PATCH /projects/{projectId}/sharing`

## Request

- Base URL: `https://app.flora.ai/api/v1`
- URL: `https://app.flora.ai/api/v1/projects/{projectId}/sharing`
- Auth: HTTP bearer

Changes the project's link sharing explicitly. Set `sharing_mode` to `restricted` to unshare (every share link stops resolving), or to `view` or `edit` to open it — the response then carries the link for that mode, created if needed; `edit` requires the workspace plan to include editable sharing (`paid_plan_required` otherwise). `allow_link_comments` and `passphrase` apply to the link and are rejected while sharing is restricted. Only fields present in the body change. Returns the resulting sharing state.

## Path parameters

- `projectId` string, required: Project identifier

## Request body

- object
  - `sharing_mode` 'restricted' | 'view' | 'edit': New link sharing mode. `restricted` revokes every share link; `view` or `edit` opens sharing and the response carries the link for that mode, created if needed.
  - `allow_link_comments` boolean: Whether visitors arriving through the link may leave comments
  - `passphrase` string, nullable: A string sets or replaces the passphrase visitors must enter before the link resolves; `null` (or an empty string) clears it. Whitespace-only values are rejected. Omit to leave it unchanged.

## Response `200`

Sharing updated.

- object
  - `project_id` string, required: Project identifier
  - `workspace_id` string, required: Workspace identifier
  - `sharing_mode` 'restricted' | 'view' | 'edit', required: Link sharing mode: `restricted` (no links; members only), `view` (anyone with the link can view), `edit` (anyone with the link can edit)
  - `is_private` boolean, required: True when only the owner and the people it was shared with can see the project, rather than the whole workspace
  - `can_manage_sharing` boolean, required: Whether the authenticated user may change this project's sharing
  - `link` object, nullable, required: The active share link. Null when sharing is restricted, no link has been created yet, or the caller may not manage sharing.
    - `url` string, uri, required: Link into the project. Anyone who has it gets the link's role, so treat it as a secret.
    - `role` 'guest' | 'editor', required: What the link grants: `guest` can view (and comment when allowed), `editor` can edit
    - `allow_comments` boolean, required: Whether visitors arriving through the link may leave comments
    - `passphrase_protected` boolean, required: Whether visitors must enter a passphrase before the link resolves. The passphrase itself is never returned.
  - `owner` object, required: Project owner
    - `name` string, required: Display name
    - `email` string, required: Email address
  - `members` object[], required: People with a seat on the project besides the owner
    - `name` string, required: Display name
    - `email` string, required: Email address
    - `role` string, required: Role on the project
  - `canvas_url` string, uri, required: Project canvas URL

## Other responses

- `400`: 400
- `401`: 401
- `402`: 402
- `403`: 403
- `404`: 404
- `409`: 409
- `429`: 429
- `500`: 500
- `503`: 503

## Changes

- **2026-10-28** `a8351619f225`: 9 warning
  - added the new `not_configured` enum value to the `error/code` response property for the response status `400`
  - added the new `not_configured` enum value to the `error/code` response property for the response status `401`
  - added the new `not_configured` enum value to the `error/code` response property for the response status `402`
  - added the new `not_configured` enum value to the `error/code` response property for the response status `403`
  - …5 more
- **2026-10-16** `e54130373b10`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/florafauna-ai/apis/flora-ai-api/changes/projects/:projectId/sharing/patch.md)

---

[API](https://skmtc.dev/florafauna-ai/apis/flora-ai-api.md) - [All operations](https://skmtc.dev/florafauna-ai/apis/flora-ai-api/llms.txt) - [OpenAPI document](https://skmtc.dev/florafauna-ai/apis/flora-ai-api/revisions/87cfe2c4ac29?raw)
