Skip to content

Change a project’s visibility

POST
/orgs/{org}/projects/{id}/share
curl --request POST \
--url https://api.sloose.com/orgs/org_9f3c/projects/b3f1c8a2/share \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "visibility": "private" }'

Sharing with the org is a plan feature, checked here and not only in the UI — MCP and the CLI reach the same rows.

org
required

The org id the session was issued for. A token for one org can never read another.

string
Example
org_9f3c

The org id the session was issued for. A token for one org can never read another.

id
required

The project id.

string
Example
b3f1c8a2

The project id.

Media typeapplication/json
object
visibility
required

private is the creator’s alone; org is visible to everyone in the org.

string
Allowed values: private org

The project’s new visibility.

Media typeapplication/json
object
project
required
object
id
required
string
orgId
required
string
connectorId
required

The destination this project imports into. Null means the org’s default CRM: a project from before connectors were named, or one saved by an API token or an older session, which name no connector.

string | null
name
required
string
description
required
string | null
createdByUserId
required
string
visibility
required
string
Allowed values: private org
schemaVersion
required
number
enabledModules
required
Array<string>
libraryVersions
required
object | null
registryVersion
required
number | null
sourceRef
required

bundle:<file> when pushed from a config repo; null when built by a person.

string | null
createdAt
required
string
updatedAt
required
string
Example
{
"project": {
"visibility": "private"
}
}

The request body did not match the schema. issues carries the Zod issue list.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

No bearer, or one that is expired, revoked or no longer resolves to a member.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

The role is too low, the plan cannot share projects (code: FEATURE_SHARED_PROJECTS), or you are neither the creator nor an admin (code: NOT_PROJECT_OWNER).

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}

No such project, or it is not visible to this session.

Media typeapplication/json

The error envelope every non-2xx answer uses.

object
error
required

Human-readable explanation.

string
code

Machine-readable reason. Absent on a few legacy 400s.

string
key
additional properties
Examplegenerated
{
"error": "example",
"code": "example"
}