Role permissions API
Each role has granted permissions for certain modules.
Content
Role permissions collection:
[GET] index, searching and filtering role permissions
Single role permissions:
Roles permissions collection
Role permissions index
Request
| Index behaviour | Definition |
|---|---|
| Paginated by default | No |
| Sorting | - |
| Filters | - |
| Embedded | - |
GET /api/roles/{role_id}/permissions
This method needs permission
readonusers.
Request
GET /api/roles/1/permissions HTTP/1.1
Content-Type: application/json
Response
200 OK
GET /api/roles/1/permissions HTTP/1.1
Content-Type: application/json
{
"items": [
{
"module_id": "users",
"module_description": "Správa uživatelů",
"is_module_active": true,
"permissions": [
"full"
],
"_links": [
{
"href": "/api/modules/users",
"rel": "module",
"type": "GET"
}
]
},
{
"module_id": "brands",
"module_description": "Správa značek",
"is_module_active": true,
"permissions": [
"create",
"read",
"update"
],
"_links": [
{
"href": "/api/modules/brands",
"rel": "module",
"type": "GET"
}
]
}
]
}
404 NOT FOUND
Role not found.
Single role permissions
Role permissions detail
GET /api/roles/{role_id}/permissions/{module_id}
This method needs permission
readonusers.
Request
| Index behaviour | Definition |
|---|---|
| Embedded | - |
GET /api/roles/1/permissions/brands HTTP/1.1
Content-Type: application/json
Response
200 OK
GET /api/roles/1/permissions/brands HTTP/1.1
Content-Type: application/json
{
"module_id": "brands",
"module_description": "Správa značek",
"is_module_active": true,
"permissions": [
"create",
"read",
"update"
],
"_links": [
{
"href": "/api/modules/brands",
"rel": "module",
"type": "GET"
}
]
}
404 NOT FOUND
Update role permissions
PUT /api/roles/{role_id}/permissions/{module_id}
This method needs permission
createonpermissions.
Request
| Param | Type | Description | Requirements |
|---|---|---|---|
permissions | PermissionEnum[] | Role permissions | Present. Has to be array of unique PermissionEnum values or empty array. |
PUT /api/roles/1/permissions/brands HTTP/1.1
Content-Type: application/json
{
"permissions" : ["read", "create"]
}
Response
200 OK
PUT /api/roles/1/permissions/brands HTTP/1.1
Content-Type: application/json
{
"module_id": "brands",
"module_description": "Správa značek",
"is_module_active": true,
"permissions": [
"read",
"create"
],
"_links": [
{
"href": "/api/modules/brands",
"rel": "module",
"type": "GET"
}
]
}
422 UNPROCESSABLE ENTITY
Validation error occurred.
PUT /api/roles/1/permissions/brands HTTP/1.1
Content-Type: application/json
{
"type" : "ValidationError",
"message" : "The given data was invalid.",
"id" : "fe1b04de-b347-43b5-8118-864c1eefaccf",
"errors": [
{
"field": "module_id",
"message": "The module id field is required."
}
]
}
404 NOT FOUND
PermissionEnum
String. Values: access, read, create, update, delete, full