Role Permission
Endpoints for Role Permission
Endpoints for Role Permission
GET/api/v1/roles
Authentication: Bearer token (JWT)
pagenumberOptional1minimum: 1takenumberOptional10minimum: 1maximum: 50orderBystringOptional"createdAt"Allowed values: "createdAt", "id", "updatedAt"orderDirectionstringOptional"desc"Allowed values: "asc", "desc"itemsarray of RoleRequired11 fieldsitemsnamestringRequired when parent is presentField path: items[].namecurlcurl https://api.subrite.no/api/v1/roles \
--header 'Authorization: Bearer <token>'POST/api/v1/roles
Authentication: Bearer token (JWT)
application/jsonnamestringRequiredmaxLength: 100isActivebooleanOptionaltruesectionPermissionsarray of SectionPermissionRequiredGET/api/v1/roles/sections
Authentication: Bearer token (JWT)
sectionIdstringRequired when parent is presentGET/api/v1/roles/{id}
Authentication: Bearer token (JWT)
idnumberRequiredSame fields as Create a new role (201).
DELETE/api/v1/roles/{id}
Authentication: Bearer token (JWT)
idnumberRequiredThis response has no body.
PATCH/api/v1/roles/{id}
Authentication: Bearer token (JWT)
idnumberRequiredapplication/jsonnamestringOptionalmaxLength: 100isActivebooleantenantIdnumberisActivebooleanRequired when parent is presentField path: items[].isActiveuserRolesarray of UserRoleRequired when parent is presentField path: items[].userRoles9 fieldsitems[].userRolesuserIdnumberRequired when parent is presentField path: items[].userRoles[].userIdroleIdnumberRequired when parent is presentField path: items[].userRoles[].roleIduserUserRequired when parent is presentField path: items[].userRoles[].userNested fields omitted: depth limit.roleRoleRequired when parent is presentField path: items[].userRoles[].roleRecursive schema; nested fields are not repeated.idnumberRequired when parent is presentField path: items[].userRoles[].idcreatedAtstring (date-time)Required when parent is presentField path: items[].userRoles[].createdAtupdatedAtstring (date-time)Required when parent is presentField path: items[].userRoles[].updatedAtdeletedAtstring (date-time)Required when parent is presentField path: items[].userRoles[].deletedAtmetaDataobjectRequired when parent is presentField path: items[].userRoles[].metaDatarolePermissionsarray of RolePermissionRequired when parent is presentField path: items[].rolePermissions9 fieldsitems[].rolePermissionsroleIdnumberRequired when parent is presentField path: items[].rolePermissions[].roleIdpermissionIdnumberRequired when parent is presentField path: items[].rolePermissions[].permissionIdroleRoleRequired when parent is presentField path: items[].rolePermissions[].roleRecursive schema; nested fields are not repeated.permissionPermissionRequired when parent is presentField path: items[].rolePermissions[].permissionNested fields omitted: depth limit.idnumberRequired when parent is presentField path: items[].rolePermissions[].idcreatedAtstring (date-time)Required when parent is presentField path: items[].rolePermissions[].createdAtupdatedAtstring (date-time)Required when parent is presentField path: items[].rolePermissions[].updatedAtdeletedAtstring (date-time)Required when parent is presentField path: items[].rolePermissions[].deletedAtmetaDataobjectRequired when parent is presentField path: items[].rolePermissions[].metaDatatenantTenantRequired when parent is presentField path: items[].tenantNested fields omitted: field limit.idnumberRequired when parent is presentField path: items[].idcreatedAtstring (date-time)Required when parent is presentField path: items[].createdAtupdatedAtstring (date-time)Required when parent is presentField path: items[].updatedAtdeletedAtstring (date-time)Required when parent is presentField path: items[].deletedAtmetaDataobjectRequired when parent is presentField path: items[].metaDatametaPageMetaRequired6 fieldsmetapagenumberRequiredField path: meta.pagetakenumberRequiredField path: meta.takecountnumberRequiredField path: meta.countpageCountnumberRequiredField path: meta.pageCounthasPreviousPagebooleanRequiredField path: meta.hasPreviousPagehasNextPagebooleanRequiredField path: meta.hasNextPage{
"items": [
{
"userRoles": [],
"rolePermissions": [],
"metaData": {}
}
],
"meta": {
"page": 0,
"take": 0,
"count": 0,
"pageCount": 0,
"hasPreviousPage": true,
"hasNextPage": true
}
}badRequest
messageCodestringRequired"badRequest"messagestringerrorsarray of FieldErrorRequired7 fieldserrorsfieldstringRequired when parent is presentField path: errors[].fieldfieldValuestringRequired when parent is presentField path: errors[].fieldValueidentifierstringRequired when parent is presentField path: errors[].identifieridentifierValuestringRequired when parent is presentField path: errors[].identifierValuemessageCodestringRequired when parent is presentField path: errors[].messageCodemessagestringField path: errors[].messageerrorTypestringRequired when parent is present{
"messageCode": "badRequest",
"message": "string",
"errors": [
{}
]
}unauthorized
This response has no body.
forbiddenResource
messageCodestringRequiredmessagestringerrorsarray of FieldErrorRequired7 fieldserrorsfieldstringRequired when parent is presentField path: errors[].fieldfieldValuestringRequired when parent is presentField path: errors[].fieldValueidentifierstringRequired when parent is presentField path: errors[].identifieridentifierValuestringRequired when parent is presentField path: errors[].identifierValuemessageCodestringRequired when parent is presentField path: errors[].messageCodemessagestringField path: errors[].messageerrorTypestringRequired when parent is presentField path: errors[].errorType{
"messageCode": "string",
"message": "string",
"errors": [
{}
]
}sectionPermissionsuniqueItems: truesectionIdstringRequired when parent is presentField path: sectionPermissions[].sectionIdmaxLength: 255sectionNamestringOptionalField path: sectionPermissions[].sectionNamemaxLength: 255readPermissionbooleanRequired when parent is presentField path: sectionPermissions[].readPermissionupdatePermissionbooleanRequired when parent is presentField path: sectionPermissions[].updatePermissionidnumberRequirednamestringRequireduserCountnumberRequiredisActivebooleanRequiredtenantIdnumberRequiredsectionPermissionsarray of SectionPermissionRequired4 fieldssectionPermissionssectionIdstringRequired when parent is presentField path: sectionPermissions[].sectionIdmaxLength: 255sectionNamestringField path: sectionPermissions[].sectionNamemaxLength: 255readPermissionbooleanRequired when parent is presentField path: sectionPermissions[].readPermissionupdatePermissionbooleanRequired when parent is presentField path: sectionPermissions[].updatePermissionupdatedAtstring (date-time)Required{
"id": 0,
"name": "string",
"userCount": 0,
"isActive": true,
"tenantId": 0,
"sectionPermissions": [
{}
],
"updatedAt": "2019-08-24T14:15:22Z"
}badRequest (incl. alreadyExists on name, unknownPermissionSection in errors[]), internalServerError (validation)
messageCodestringRequired"badRequest", "internalServerError"messagestringerrorsarray of FieldErrorunauthorized
This response has no body.
forbiddenResource
Same fields as Get all roles of the tenant (403).
{
"messageCode": "string",
"message": "string",
"errors": [
{}
]
}internalServerError, permissionSectionNotConfigured
messageCodestringRequired"internalServerError", "permissionSectionNotConfigured"messagestringerrorsarray of FieldErrorRequiredcurlcurl https://api.subrite.no/api/v1/roles \
--request POST \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "string",
"isActive": true,
"sectionPermissions": [
{}
]
}'maxLength: 255sectionNamestringmaxLength: 255readPermissionbooleanRequired when parent is presentupdatePermissionbooleanRequired when parent is present[
{
"sectionId": "string",
"sectionName": "string",
"readPermission": true,
"updatePermission": true
}
]unauthorized
This response has no body.
forbiddenResource
Same fields as Get all roles of the tenant (403).
{
"messageCode": "string",
"message": "string",
"errors": [
{}
]
}curlcurl https://api.subrite.no/api/v1/roles/sections \
--header 'Authorization: Bearer <token>'{
"id": 0,
"name": "string",
"userCount": 0,
"isActive": true,
"tenantId": 0,
"sectionPermissions": [
{}
],
"updatedAt": "2019-08-24T14:15:22Z"
}badRequest
Same fields as Get all roles of the tenant (400).
{
"messageCode": "badRequest",
"message": "string",
"errors": [
{}
]
}unauthorized
This response has no body.
forbiddenResource
Same fields as Get all roles of the tenant (403).
{
"messageCode": "string",
"message": "string",
"errors": [
{}
]
}roleNotFound
messageCodestringRequired"roleNotFound"messagestringerrorsarray of FieldErrorRequired7 fieldserrorsfieldstringRequired when parent is presentField path: errors[].fieldfieldValuestringRequired when parent is presentField path: errors[].fieldValueidentifierstringRequired when parent is presentField path: errors[].identifieridentifierValuestringRequired when parent is presentField path: errors[].identifierValuemessageCodestringRequired when parent is presentField path: errors[].messageCodemessagestringField path: errors[].messageerrorTypestringRequired when parent is present{
"messageCode": "roleNotFound",
"message": "string",
"errors": [
{}
]
}curlcurl 'https://api.subrite.no/api/v1/roles/{id}' \
--header 'Authorization: Bearer <token>'application/jsonbadRequest
Same fields as Get all roles of the tenant (400).
{
"messageCode": "badRequest",
"message": "string",
"errors": [
{}
]
}unauthorized
This response has no body.
forbiddenResource
Same fields as Get all roles of the tenant (403).
{
"messageCode": "string",
"message": "string",
"errors": [
{}
]
}roleNotFound
Same fields as Get a role by id with its section permissions (404).
{
"messageCode": "roleNotFound",
"message": "string",
"errors": [
{}
]
}roleIsAssignedToUsers
messageCodestringRequired"roleIsAssignedToUsers"messagestringerrorsarray of FieldErrorRequired7 fieldserrorsfieldstringRequired when parent is presentField path: errors[].fieldfieldValuestringRequired when parent is presentField path: errors[].fieldValueidentifierstringRequired when parent is presentField path: errors[].identifieridentifierValuestringRequired when parent is presentField path: errors[].identifierValuemessageCodestringRequired when parent is presentField path: errors[].messageCodemessagestringField path: errors[].messageerrorTypestringRequired when parent is present{
"messageCode": "roleIsAssignedToUsers",
"message": "string",
"errors": [
{}
]
}curlcurl 'https://api.subrite.no/api/v1/roles/{id}' \
--request DELETE \
--header 'Authorization: Bearer <token>'truesectionPermissionsarray of SectionPermissionOptional3 required when the containing object is present4 fieldssectionPermissionsuniqueItems: truesectionIdstringRequired when parent is presentField path: sectionPermissions[].sectionIdmaxLength: 255sectionNamestringOptionalField path: sectionPermissions[].sectionNamemaxLength: 255readPermissionbooleanRequired when parent is presentField path: sectionPermissions[].readPermissionupdatePermissionbooleanRequired when parent is presentField path: sectionPermissions[].updatePermission{
"name": "string",
"isActive": true
}Same fields as Create a new role (201).
{
"id": 0,
"name": "string",
"userCount": 0,
"isActive": true,
"tenantId": 0,
"sectionPermissions": [
{}
],
"updatedAt": "2019-08-24T14:15:22Z"
}badRequest (incl. alreadyExists on name, unknownPermissionSection in errors[]), internalServerError (validation)
Same fields as Create a new role (400).
{
"messageCode": "badRequest",
"message": "string",
"errors": [
{}
]
}unauthorized
This response has no body.
forbiddenResource
Same fields as Get all roles of the tenant (403).
{
"messageCode": "string",
"message": "string",
"errors": [
{}
]
}roleNotFound
Same fields as Get a role by id with its section permissions (404).
{
"messageCode": "roleNotFound",
"message": "string",
"errors": [
{}
]
}internalServerError, permissionSectionNotConfigured
Same fields as Create a new role (500).
{
"messageCode": "internalServerError",
"message": "string",
"errors": [
{}
]
}curlcurl 'https://api.subrite.no/api/v1/roles/{id}' \
--request PATCH \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "string",
"isActive": true,
"sectionPermissions": [
{}
]
}'errorsfieldstringRequired when parent is presentField path: errors[].fieldfieldValuestringRequired when parent is presentField path: errors[].fieldValueidentifierstringRequired when parent is presentField path: errors[].identifieridentifierValuestringRequired when parent is presentField path: errors[].identifierValuemessageCodestringRequired when parent is presentField path: errors[].messageCodemessagestringField path: errors[].messageerrorTypestringRequired when parent is presentField path: errors[].errorType{
"messageCode": "badRequest",
"message": "string",
"errors": [
{}
]
}errorsfieldstringRequired when parent is presentField path: errors[].fieldfieldValuestringRequired when parent is presentField path: errors[].fieldValueidentifierstringRequired when parent is presentField path: errors[].identifieridentifierValuestringRequired when parent is presentField path: errors[].identifierValuemessageCodestringRequired when parent is presentField path: errors[].messageCodemessagestringField path: errors[].messageerrorTypestringRequired when parent is presentField path: errors[].errorType{
"messageCode": "internalServerError",
"message": "string",
"errors": [
{}
]
}