Skip to main content

CreateRoleDto

namestringrequired

Role name (unique identifier)

Example: admin
descriptionstringrequired

Role description

Example: Administrator role with full access
levelnumber

Role level (higher = more authority)

Default value: 1
Example: 1
isSystemRoleboolean

Whether this is a system role

Default value: false
isActiveboolean

Whether role is active

Default value: true
colorstring

Color code for UI (hex format)

Example: #140EAC
iconstring

Icon name for UI

Example: shield
displayOrdernumber

Display order

Default value: 0
settings object

Role settings

property name*any

Role settings

metadata object

Role metadata

property name*any

Role metadata

permissionIdsstring[]

Permission IDs to assign to this role

baseRolestring

Built-in role this custom role is modelled on. Determines which dashboard widgets its holders see — a custom role name is not a member of the dashboard role enum, so without this its holders get a blank dashboard. Send the same role whose permissions were cloned.

Possible values: [super_admin, it_administrator, mine_director, mine_manager, mine_engineer, zone_engineer, senior_safety_engineer, junior_safety_engineer, environmentalist, stock_manager, finance_officer, field_supervisor, subcontractor, government_inspector]

Example: field_supervisor
CreateRoleDto
{
"name": "admin",
"description": "Administrator role with full access",
"level": 1,
"isSystemRole": false,
"isActive": true,
"color": "#140EAC",
"icon": "shield",
"displayOrder": 0,
"settings": {},
"metadata": {},
"permissionIds": [
"string"
],
"baseRole": "field_supervisor"
}