Skip to main content

Permissions

Permissions are implemented in what is called an access control list. Permissions have a simple and an advanced edit mode. In the simple edit more permissions have 4 basic ability types.

Base Ability
AbilityValueDescription
read0x01Read an instance of an object
interact0x02Interact with an instance of an object
create_edit0x04Create a new instance or edit an existing instance of an object
delete0x08Delete an instance of an object

Permissions are assigned in the access control list by applying a permissions grant to a user or a role.

Grant Values
GrantValueDescription
Deny-1Deny the user from using an ability
Inherit0Inherit the abilities from a parent object
Allow1Allow the user to use an ability
Objects
ObjectValueDescription
organisation0x0001Organisation
user0x0002User
role0x0004Role
workgroup0x0008Workgroup
team0x0010Team
document0x0020Document
workitem0x0040Work item
location0x0080Location
fleet0x0100Fleet
assetgroup0x0200Asset group
Permissions
PermissionAbilityDescriptionObject
MANAGE_ORGANISATIONcreate_editAllows to manage the organisationorganisation
CREATE_INVITEcreate_editAllows to create invites to the organisationorganisation
REVOKE_INVITEdeleteAllows to revoke active invites to the organisationorganisation
MANAGE_ROLEScreate_editAllows to manage roles for the organisationorganisation
MANAGE_WORKGROUPScreate_editAllows to manage work groups for the organisationorganisation, workgroup
MANAGE_TEAMScreate_editAllows to manage teams for a work grouporganisation, workgroup, team
CREATE_WORKITEMScreate_editAllows to create new work itemsorganisation
WORK_WORKITEMSinteractAllows to work on work itemsorganisation
SCHEDULE_WORKITEMScreate_editAllows to add a schedule to a work itemorganisation
INVITE_WORKITEMScreate_editAllows to invite people to work item schedulesorganisation, workitem
VIEW_WORKITEMSreadAllows to view work itemsorganisation, location, fleet, workitem
CREATE_DOCUMENTScreate_editAllows to create new documentsorganisation
EDIT_DOCUMENTScreate_editAllows to edit documentsorganisation, document
FORK_DOCUMENTScreate_editAllows to fork documents into a new documentorganisation, document
VIEW_DOCUMENTSreadAllows to view documentsorganisation, document
MANAGE_SYSTEMScreate_editAllows to manage systems for a fleetorganisation, fleet
MANAGE_LOCATIONScreate_editAllows to manage locations for the organisationorganisation
VIEW_LOCATIONSreadAllows to view locations for the organisationorganisation, location
MANAGE_FLEETScreate_editAllows to manage fleets for the organisationorganisation

Inheritance

Permissions can be inherited from the parent object.

Permission Object

Permissions have a unique name known as a permission key.

FieldTypeDescription
idsnowflakethe permission's id
keystringthe permissions unique key (2-30 characters)
descriptionstringa description of the permissions
abilitybase abilityThe base ability the permission grants

Permission Grant Object

FieldTypeDescription
object_idsnowflakethe item the permission grant is for
object_typeintegerThe object type
permittee_idsnowflakethe user, role, workgroup, or team id
permittee_typeintegerThe object type, either user, role, workgroup, or team
permission_idsnowflakethe permission being granted
grantsbyteThe grant value