Permissions

Who can read or edit spaces and collections.

MethodPathSummary
GET/v1/app/kb/permissionsList permissions
POST/v1/app/kb/permissionsCreate / update a permission entry POST /permissions body: { object_type, object_id, subject_type, subject_id, can_read, can_write, can_manage, is_denied }
DELETE/v1/app/kb/permissions/:perm_idRemove a permission
GET/v1/app/kb/subjects/usersFind people (for permission pickers)
GET/v1/app/kb/subjects/groupsFind groups (for permission pickers)

#List permissions

GET/v1/app/kb/permissions
Address
https://<your-org>.brambleit.cloud/api/v1/app/kb/permissions
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: WiKi.

Query parameters

NameTypeDescription
object_typestring
object_idinteger

Response 200

FieldTypeDescription
permissionsarray of object
permissions[].idinteger
permissions[].object_typestring: "space" | "collection" | "article"
permissions[].object_idinteger
permissions[].subject_typestring: "user" | "group"
permissions[].subject_idinteger
permissions[].can_readboolean
permissions[].can_writeboolean
permissions[].can_manageboolean
permissions[].is_deniedboolean
permissions[].created_atstring (date-time)
permissions[].created_byinteger
Example response
JSON
{
  "permissions": [
    {
      "id": 42,
      "object_type": "space",
      "object_id": 7,
      "subject_type": "user",
      "subject_id": 7,
      "can_read": true,
      "can_write": true,
      "can_manage": true,
      "is_denied": true,
      "created_at": "2026-11-12T09:30:00.000Z",
      "created_by": 1
    }
  ]
}

Errors

StatusMessage
400object_type and numeric object_id are required
400Invalid object_type
404User not found
403No manage permission on this object

Example request

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

#Create / update a permission entry POST /permissions body: { object_type, object_id, subject_type, subject_id, can_read, can_write, can_manage, is_denied }

POST/v1/app/kb/permissions
Address
https://<your-org>.brambleit.cloud/api/v1/app/kb/permissions
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: WiKi.

Request body JSON

NameTypeDescription
object_typestring
object_idinteger
subject_typestring
subject_idinteger
can_readboolean
can_writeboolean
can_manageboolean
is_deniedboolean

Response 201

FieldTypeDescription
permissionany
Example response
JSON
{
  "permission": null
}

Errors

StatusMessage
400object_type and numeric object_id are required
400Invalid object_type
400Invalid subject_type
400subject_id must be a numeric ID
404User not found
403No manage permission on this object

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/app/kb/permissions' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"object_type":"string","object_id":7,"subject_type":"Example subject type","subject_id":7,"can_read":true,"can_write":true,"can_manage":true,"is_denied":true}'

#Remove a permission

DELETE/v1/app/kb/permissions/:perm_id
Address
https://<your-org>.brambleit.cloud/api/v1/app/kb/permissions/:perm_id
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: WiKi.

Path parameters

NameTypeDescription
perm_idrequiredinteger

Response 200

FieldTypeDescription
messagestring
Example response
JSON
{
  "message": "Saved"
}

Errors

StatusMessage
400Invalid permission id
404User not found
404Permission not found
403No manage permission on this object

Example request

Bash
curl -X DELETE 'https://<your-org>.brambleit.cloud/api/v1/app/kb/permissions/7' \
  -H "X-API-Key: $BRAMBLE_KEY"

#Find people (for permission pickers)

GET/v1/app/kb/subjects/users
Address
https://<your-org>.brambleit.cloud/api/v1/app/kb/subjects/users
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: WiKi.

Query parameters

NameTypeDescription
qany

Response 200

FieldTypeDescription
usersarray of object
users[].idinteger
users[].labelstring
users[].emailstring, or null
Example response
JSON
{
  "users": [
    {
      "id": 42,
      "label": "Example label",
      "email": "alex@example.com"
    }
  ]
}

Errors

StatusMessage
401Unauthenticated

Example request

Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/app/kb/subjects/users' \
  -H "X-API-Key: $BRAMBLE_KEY"

#Find groups (for permission pickers)

GET/v1/app/kb/subjects/groups
Address
https://<your-org>.brambleit.cloud/api/v1/app/kb/subjects/groups
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: WiKi.

Query parameters

NameTypeDescription
qany

Response 200

FieldTypeDescription
groupsarray of object
groups[].idinteger
groups[].labelstring
Example response
JSON
{
  "groups": [
    {
      "id": 42,
      "label": "Example label"
    }
  ]
}

Errors

StatusMessage
401Unauthenticated

Example request

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