Update workspace member role

Changed on

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Changes a member's role in a workspace to admin, editor, or viewer. The new role applies right away. For someone whose invitation is still pending, it's the role they get when they accept.

You can't change your own role or the owner's. A role that a group grants can only be changed at the group, with Update workspace group or by changing its members. admin needs the Business plan or higher. Moving someone to viewer removes their own credit limit, and promoting a guest makes them a full member. Setting the role a member already has succeeds, so retrying is safe.

This is limited to 30 requests per minute, shared with Update workspace member role, Remove workspace member, Set member credit limit, and Set default member credit limit. A signed-in session has its own limit, and every personal access token for the workspace shares one. Some workspaces have a different limit.

<Note>Call this as an owner or admin of the workspace, with a personal access token for that workspace sent as a Bearer token, or from a signed-in session. A read-only token is refused, and workspace API keys aren't accepted.</Note>

put/api/workspace/members/{email}/role

Request

  • Base URL: https://app.base44.com
  • URL: https://app.base44.com/api/workspace/members/{email}/role
  • Auth: HTTP bearer

Path parameters

emailstring required

Email of the member whose role to change, exactly as email in List workspace members returns it. Matching is exact, including case. URL-encode it: @ as %40 and + as %2B.

Query parameters

workspaceIdstring required

ID of the workspace. With a personal access token, use the token's workspace. Get it from organization_id in Get app.

Request body

role'admin' | 'editor' | 'viewer' required

The member's new role. admin needs the Business plan or higher.

Example request

{
  "role": "editor"
}

Response

The member has the new role.

status'success' required

Always success.

messagestring required

Short confirmation. Its wording can change, so don't parse it.

Example response

{
  "status": "success",
  "message": "Members added to group."
}

Changes