Skip to main content
PATCH
Update Workspace User Role

Authorizations

Authorization
string
header
required

JWT in Authorization header. 'Bearer ' prefix optional.

Path Parameters

workspace_id
string<uuid>
required
user_id
string<uuid>
required

Body

application/json

API request schema for updating a user's role in a workspace.

When converting MEMBER_LIMITED -> MEMBER:

  • keep_explicit_permissions=True (default): Keep explicit project permissions as overrides
  • keep_explicit_permissions=False: Delete all explicit project permissions, use defaults only

When converting MEMBER -> MEMBER_LIMITED:

  • Explicit project permissions are always kept (they become user's only access)
role
enum<string>
required

New role for the user (must be a workspace role: owner, member, member_limited)

Available options:
owner,
member,
member_limited,
full_access,
editor,
commenter,
downloader,
viewer,
no_access
keep_explicit_permissions
boolean | null

Only used when converting MEMBER_LIMITED -> MEMBER. If True or None (default), keeps explicit project permissions as overrides. If False, deletes all explicit permissions.

Response

Successful Response

API response schema for a workspace user.

id
string<uuid>
required

User ID

first_name
string
required

User's first name

last_name
string
required

User's last name

email
string
required

User's email address

role
enum<string>
required

User's workspace role

Available options:
owner,
member,
member_limited,
full_access,
editor,
commenter,
downloader,
viewer,
no_access
actions
integer
required

Permission bitmap derived from role

avatar_url
string | null

User's avatar URL

external_id
string | null

External user ID from auth provider (None for stub users)

explicit_permission_count
integer | null

Count of explicit project permissions in the workspace

accessible_project_count
integer | null

Count of accessible projects (MEMBER users only)