Groups

Groups of people. Groups are used to give access (apps, sites, PSA queues, single sign-on apps, security policies) to many people at once.

MethodPathSummary
GET/v1/admin/tenant/groupsList the tenant's groups with member counts
GET/v1/admin/tenant/groups/:idGet a group and its members
POST/v1/admin/tenant/groupsCreate a group. Requires the GLOBAL_ADMIN role
PATCH/v1/admin/tenant/groups/:idRename a group. Requires the GLOBAL_ADMIN role
DELETE/v1/admin/tenant/groups/:idDelete a group. Requires the GLOBAL_ADMIN role
POST/v1/admin/tenant/groups/:id/membersAdd a user to a group
DELETE/v1/admin/tenant/groups/:id/members/:userIdRemove a user from a group

#List the tenant's groups with member counts

GET/v1/admin/tenant/groups

List the tenant's groups with member counts. Requires the GLOBAL_ADMIN role.

Address
https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Role: GLOBAL_ADMIN.

Response 200

FieldTypeDescription
groupsarray of any
Example response
JSON
{
  "groups": []
}

Example request

Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups' \
  -H "X-API-Key: $BRAMBLE_KEY"

#Get a group and its members

GET/v1/admin/tenant/groups/:id

Get a group and its members. Requires the GLOBAL_ADMIN role.

Address
https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/:id
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Role: GLOBAL_ADMIN.

Path parameters

NameTypeDescription
idrequiredinteger

Response 200

FieldTypeDescription
groupany
membersarray of any
Example response
JSON
{
  "group": null,
  "members": []
}

Errors

StatusMessage
404Group not found

Example request

Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/42' \
  -H "X-API-Key: $BRAMBLE_KEY"

#Create a group. Requires the GLOBAL_ADMIN role

POST/v1/admin/tenant/groups

Create a group. Requires the GLOBAL_ADMIN role. group_name is required.

Address
https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Role: GLOBAL_ADMIN.

Request body JSON

NameTypeDescription
group_namerequiredstringThe group's name.

Response 201

FieldTypeDescription
successboolean
groupobject
group.idinteger
group.group_namestring
Example response
JSON
{
  "success": true,
  "group": {
    "id": 42,
    "group_name": "Example group name"
  }
}

Errors

StatusMessage
400Group name is required

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"group_name":"Example group name"}'

#Rename a group. Requires the GLOBAL_ADMIN role

PATCH/v1/admin/tenant/groups/:id

Rename a group. Requires the GLOBAL_ADMIN role. group_name is required.

Address
https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/:id
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Role: GLOBAL_ADMIN.

Path parameters

NameTypeDescription
idrequiredinteger

Request body JSON

NameTypeDescription
group_namerequiredstring

Response 200

FieldTypeDescription
successboolean
Example response
JSON
{
  "success": true
}

Errors

StatusMessage
400Group name is required
404Group not found

Example request

Bash
curl -X PATCH 'https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/42' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"group_name":"Example group name"}'

#Delete a group. Requires the GLOBAL_ADMIN role

DELETE/v1/admin/tenant/groups/:id

Delete a group. Requires the GLOBAL_ADMIN role. Cascades to the group's membership rows in a transaction.

Address
https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/:id
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Role: GLOBAL_ADMIN.

Path parameters

NameTypeDescription
idrequiredinteger

Response 200

FieldTypeDescription
successboolean
Example response
JSON
{
  "success": true
}

Errors

StatusMessage
404Group not found

Example request

Bash
curl -X DELETE 'https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/42' \
  -H "X-API-Key: $BRAMBLE_KEY"

#Add a user to a group

POST/v1/admin/tenant/groups/:id/members

Add a user to a group. Requires the GLOBAL_ADMIN role. Validates the user belongs to the caller's tenant; uses INSERT IGNORE so re-adding an existing member is a no-op.

Address
https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/:id/members
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Role: GLOBAL_ADMIN.

Path parameters

NameTypeDescription
idrequiredinteger

Request body JSON

NameTypeDescription
user_idrequiredintegerThe person to add.

Response 201

FieldTypeDescription
successboolean
Example response
JSON
{
  "success": true
}

Errors

StatusMessage
400user_id is required
400User not found on this tenant
404Group not found

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/42/members' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"user_id":7}'

#Remove a user from a group

DELETE/v1/admin/tenant/groups/:id/members/:userId

Remove a user from a group. Requires the GLOBAL_ADMIN role.

Address
https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/:id/members/:userId
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Role: GLOBAL_ADMIN.

Path parameters

NameTypeDescription
idrequiredinteger
userIdrequiredinteger

Response 200

FieldTypeDescription
successboolean
Example response
JSON
{
  "success": true
}

Errors

StatusMessage
404Membership not found

Example request

Bash
curl -X DELETE 'https://<your-org>.brambleit.cloud/api/v1/admin/tenant/groups/42/members/1' \
  -H "X-API-Key: $BRAMBLE_KEY"