Skip to content

Change a role

PUT
/api/v1/workspaces/{workspaceId}/roles/{roleId}
curl --request PUT \
--url https://api.crossmart.io/api/v1/workspaces/example/roles/example \
--header 'Content-Type: application/json' \
--data '{ "name": "Stock clerk", "description": "example", "permissions": [ "workspace:view" ] }'

Applies to everyone holding it at once. API keys created by its members that now allow more than the role are revoked.

workspaceId
required
string
roleId
required
string
Media typeapplication/json
object
name
required
string
<= 60 characters

Example

Stock clerk
description
string
nullable <= 200 characters
permissions
required

At most your own permissions. workspace:view is always added; workspace:delete is for owners only.

Array<string>
Allowed values: workspace:view workspace:manage workspace:delete members:view members:manage api-keys:manage products:view products:edit inventory:view inventory:edit orders:view reports:view channels:view channels:manage listings:edit activity:view suggestions:view suggestions:approve billing:view ai:generate
Media typeapplication/json
object
id
required
string format: uuid
name
required
string
description
required
string
nullable
permissions
required
Array<string>
Allowed values: workspace:view workspace:manage workspace:delete members:view members:manage api-keys:manage products:view products:edit inventory:view inventory:edit orders:view reports:view channels:view channels:manage listings:edit activity:view suggestions:view suggestions:approve billing:view ai:generate
memberCount
required

Members holding the role now

number
createdAt
required
string format: date-time
updatedAt
required
string format: date-time

Example

{
"permissions": [
"workspace:view"
]
}