Skip to main content

Groups

Manage workspace groups for access control. Groups can be assigned filespace permissions.

GET

/api/v1/groups

Returns all groups in the workspace. Filter by name using the optional `name` query parameter.

Parameters

Parameter

Type

Description

name

string

Filter groups by name

name

Type

string

Description

Filter groups by name

Responses

Status

Description

200

Workspace groups list has been successfully fetched.

401

Invalid or missing credentials.

200

Description

Workspace groups list has been successfully fetched.

401

Description

Invalid or missing credentials.

200 response

{    "data": [    {            "id": "00000000-0000-0000-0000-000000000002",            "name": "Everyone",            "provider": "lucid",            "memberCount": 2        },        {            "id": "00000000-0000-0000-0000-000000000004",            "name": "Development Team",            "provider": "lucid",            "memberCount": 5        }    ]}

401 response

{    "error": {        "message": "Invalid or expired token"    }}
POST

/api/v1/groups

Creates a new group in the workspace. Groups can be assigned permissions on filespace directories.

Request body

Field

Type

Description

name

string

Required. Group name

name

Type

string

Description

Required. Group name

Responses

Status

Description

201

Group has been successfully created.

400

GroupAddDto is invalid.

401

Invalid or missing credentials.

201

Description

Group has been successfully created.

400

Description

GroupAddDto is invalid.

401

Description

Invalid or missing credentials.

201 response

{    "data": {        "id": "00000000-0000-0000-0000-000000000004",        "name": "Development Team",        "provider": "lucid",        "memberCount": 5    }}

400 response

{    "error": {        "message": "Name must be between 1 and 128 characters long, must contain only letters, numbers, empty spaces, and # @ . - _ and must not start or end with empty spaces."    }}

401 response

{    "error": {        "message": "Invalid or expired token"    }}
GET

/api/v1/groups/{groupId}

Returns a single group by its ID.

Parameters

Parameter

Type

Description

groupId

string

Required. PrincipalId of a group in the workspace managed by the service account

groupId

Type

string

Description

Required. PrincipalId of a group in the workspace managed by the service account

Responses

Status

Description

200

Workspace group has been successfully fetched.

401

Invalid or missing credentials.

404

Group does not exist.

200

Description

Workspace group has been successfully fetched.

401

Description

Invalid or missing credentials.

404

Description

Group does not exist.

200 response

{    "data": {        "id": "00000000-0000-0000-0000-000000000004",        "name": "Development Team",        "provider": "lucid",        "memberCount": 5    }}

401 response

{    "error": {        "message": "Invalid or expired token"    }}

404 response

{    "error": {        "message": "Resource not found or user has no access privilege"    }}
PATCH

/api/v1/groups/{groupId}

Updates a group name.

Parameters

Parameter

Type

Description

groupId

string

Required. PrincipalId of a group in the workspace managed by the service account

groupId

Type

string

Description

Required. PrincipalId of a group in the workspace managed by the service account

Request body

Field

Type

Description

name

string

Required. Group name

name

Type

string

Description

Required. Group name

Responses

Status

Description

200

Group properties updated successfully.

400

GroupUpdateDto is invalid.

401

Invalid or missing credentials.

404

Group does not exist.

200

Description

Group properties updated successfully.

400

Description

GroupUpdateDto is invalid.

401

Description

Invalid or missing credentials.

404

Description

Group does not exist.

200 response

{    "data": {        "id": "00000000-0000-0000-0000-000000000004",        "name": "Development Team",        "provider": "lucid",        "memberCount": 5    }}

400 response

{    "error": {        "message": "Name must be between 1 and 128 characters long, must contain only letters, numbers, empty spaces, and # @ . - _ and must not start or end with empty spaces."    }}

401 response

{    "error": {        "message": "Invalid or expired token"    }}

404 response

{    "error": {        "message": "Resource not found or user has no access privilege"    }}
DELETE

/api/v1/groups/{groupId}

Removes a group from the workspace. Does not remove the group's members from the workspace.

Parameters

Parameter

Type

Description

groupId

string

Required. PrincipalId of a group in the workspace managed by the service account

groupId

Type

string

Description

Required. PrincipalId of a group in the workspace managed by the service account

Responses

Status

Description

200

Workspace group has been successfully removed.

401

Invalid or missing credentials.

404

Group does not exist.

200

Description

Workspace group has been successfully removed.

401

Description

Invalid or missing credentials.

404

Description

Group does not exist.

401 response

{    "error": {        "message": "Invalid or expired token"    }}

404 response

{    "error": {        "message": "Resource not found or user has no access privilege"    }}
GET

/api/v1/groups/{groupId}/members

Returns all members in a group.

Parameters

Parameter

Type

Description

groupId

string

Required. PrincipalId of a group in the workspace managed by the service account

groupId

Type

string

Description

Required. PrincipalId of a group in the workspace managed by the service account

Responses

Status

Description

200

Array of MemberInfo objects of the members in the given group.

401

Invalid or missing credentials.

404

Group does not exist.

200

Description

Array of MemberInfo objects of the members in the given group.

401

Description

Invalid or missing credentials.

404

Description

Group does not exist.

200 response

{    "data": [    {            "id": "be9625f0-6e34-4092-946e-e0497c8cb4a1",            "user": {                "id": "d92639e7-e089-496e-8fc1-46ee53a4024b",                "email": "MQQ8YKTQJ7V0ZYYAKQHEGMTJ@sdk.test"            },            "role": "owner",            "status": "active",            "joinedOn": "2025-09-16T13:47:33.587Z",            "updatedAt": "2025-09-16T13:47:33.587Z"        },        {            "id": "be9625f0-6e34-4092-946e-e0497c8cb4a1",            "user": {                "id": "d92639e7-e089-496e-8fc1-46ee53a4024b",                "email": "developer@company.com"            },            "role": "standard",            "status": "active",            "joinedOn": "2025-09-16T13:47:33.587Z",            "updatedAt": "2025-09-16T13:47:33.587Z"        }    ]}

401 response

{    "error": {        "message": "Invalid or expired token"    }}

404 response

{    "error": {        "message": "Resource not found or user has no access privilege"    }}
PUT

/api/v1/groups/members

Adds up to 100 member-to-group relationships in a single request. Useful for bulk provisioning.

Request body

Field

Type

Description

memberships

GroupMembershipItemDto[]

Required. Array of group-member relationships to create

memberships

Type

GroupMembershipItemDto[]

Description

Required. Array of group-member relationships to create

Responses

Status

Description

200

Members have been successfully added to groups.

400

GroupMembershipBulkDto is invalid.

401

Invalid or missing credentials.

404

Group or member does not exist.

200

Description

Members have been successfully added to groups.

400

Description

GroupMembershipBulkDto is invalid.

401

Description

Invalid or missing credentials.

404

Description

Group or member does not exist.

401 response

{    "error": {        "message": "Invalid or expired token"    }}

404 response

{    "error": {        "message": "Resource not found or user has no access privilege"    }}
PUT

/api/v1/groups/{groupId}/members/{memberId}

Adds a single member to a group.

Parameters

Parameter

Type

Description

groupId

string

Required. PrincipalId of a group in the workspace managed by the service account

memberId

string

Required. PrincipalId of a member of the workspace managed by the service account

groupId

Type

string

Description

Required. PrincipalId of a group in the workspace managed by the service account

memberId

Type

string

Description

Required. PrincipalId of a member of the workspace managed by the service account

Responses

Status

Description

200

Member has been successfully added to the group.

401

Invalid or missing credentials.

404

Group or member does not exist.

200

Description

Member has been successfully added to the group.

401

Description

Invalid or missing credentials.

404

Description

Group or member does not exist.

401 response

{    "error": {        "message": "Invalid or expired token"    }}

404 response

{    "error": {        "message": "Resource not found or user has no access privilege"    }}
DELETE

/api/v1/groups/{groupId}/members/{memberId}

Removes a member from a group. Does not remove the member from the workspace.

Parameters

Parameter

Type

Description

groupId

string

Required. PrincipalId of a group in the workspace managed by the service account

memberId

string

Required. PrincipalId of a member of the workspace managed by the service account

groupId

Type

string

Description

Required. PrincipalId of a group in the workspace managed by the service account

memberId

Type

string

Description

Required. PrincipalId of a member of the workspace managed by the service account

Responses

Status

Description

200

Member has been successfully removed from the group.

401

Invalid or missing credentials.

404

Group does not exist.

200

Description

Member has been successfully removed from the group.

401

Description

Invalid or missing credentials.

404

Description

Group does not exist.

401 response

{    "error": {        "message": "Invalid or expired token"    }}

404 response

{    "error": {        "message": "Resource not found or user has no access privilege"    }}