Projects


DELETE /{o}/{p}/nuke

Wipe this project's data

Project-scoped self-service wipe, callable with a project API token at admin/owner. Wipes all project-scoped runtime + catalog rows while preserving the project, members, repo links, tokens, and environments. Idempotent.

Auth: Bearer token required ยท Permission: apply:write

Path parameters

NameTypeDescription
ostring
pstring

Responses

StatusDescriptionSchema
200Deleted row counts by tableProjectNukeResult
403Cross-project or insufficient roleError

GET /orgs/{orgId}/projects

List projects in an org

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring

Responses

StatusDescriptionSchema
200ProjectsProjectList
401UnauthorizedError

POST /orgs/{orgId}/projects

Create a project

Owner/admin only. Auto-creates the default environment and the caller's owner membership.

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring

Request body (application/json)

FieldTypeDescription
namestring(required)
slugstring(required)

Responses

StatusDescriptionSchema
201Created projectProject
401UnauthorizedError
403Forbidden (member role)Error

GET /orgs/{orgId}/projects/{projectId}

Get a project

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring
projectIdstring

Responses

StatusDescriptionSchema
200The projectProject
401UnauthorizedError
404Project not foundError

PUT /orgs/{orgId}/projects/{projectId}

Update a project

Owner/admin only.

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring
projectIdstring

Request body (application/json)

FieldTypeDescription
namestring
metadataobject

Responses

StatusDescriptionSchema
200Updated projectProject
401UnauthorizedError
403Forbidden (member role)Error
404Project not foundError

DELETE /orgs/{orgId}/projects/{projectId}

Delete a project

Owner/admin only.

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring
projectIdstring

Responses

StatusDescriptionSchema
200Deleted projectobject
401UnauthorizedError
403Forbidden (member role)Error
404Project not foundError

GET /orgs/{orgId}/projects/{projectId}/members

List project members

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring
projectIdstring

Responses

StatusDescriptionSchema
200Project membersProjectMemberList
401UnauthorizedError

POST /orgs/{orgId}/projects/{projectId}/members

Add a project member

Owner/admin only. Optionally scope the membership to a single environment.

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring
projectIdstring

Request body (application/json)

FieldTypeDescription
userIdstring(required)
roleowner | admin | member | viewer
envNamestring

Responses

StatusDescriptionSchema
201Member addedobject
400Environment not foundError
401UnauthorizedError
403Forbidden (member role)Error

DELETE /orgs/{orgId}/projects/{projectId}/members/{userId}

Remove a project member

Owner/admin only.

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring
projectIdstring
userIdstring

Responses

StatusDescriptionSchema
200Member removedobject
401UnauthorizedError
403Forbidden (member role)Error
404Member not foundError

PUT /orgs/{orgId}/projects/{projectId}/members/{userId}/cell-scopes

Set a member's cell scopes

Owner/admin only. null resets to all-cells; an array restricts the member to those cell values.

Auth: Bearer token required

Path parameters

NameTypeDescription
orgIdstring
projectIdstring
userIdstring

Request body (application/json)

FieldTypeDescription
cellScopesstring[] | null(required)

Responses

StatusDescriptionSchema
200Updated cell scopesobject
401UnauthorizedError
403Forbidden (member role)Error
404Member not foundError

Schemas

Error

FieldTypeDescription
errorstring(required)
codestring

Project

FieldTypeDescription
idstring(required)
orgIdstring(required)
namestring(required)
slugstring(required)
metadatanull
createdAtstring | string
updatedAtstring | string

ProjectList

Type: Project[]

ProjectMemberList

Type: object[]

ProjectNukeResult

FieldTypeDescription
projectIdstring(required)
rowCountsDeletedobject(required)