Role Controller
List All Roles (Web3 Auth Required)
Path: /api/roles
Method: GET
Example Http Request
GET /api/roles?owner=global&page=0&size=20&sortBy=name&sortDir=asc HTTP/1.1
X-WAL: 0x1234567890123456789012345678901234567890
X-SIG: 0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12
X-MES: VGVzdCBtZXNzYWdlIGZvciBhdXRoZW50aWNhdGlvbg==
Host: localhost:8080
Example Http Response
HTTP/1.1 200 OK
Vary: Origin
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers
Access-Control-Allow-Headers: Origin, Content-Type, Accept, Authorization, Accept-Language, connection, Cache-Control, Access-Control-Request-Method, Access-Control-Request-Headers, X-SIG, X-WAL, X-MES
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST, PUT, PATCH, DELETE, OPTIONS, HEAD
Access-Control-Expose-Headers: Access-Control-Allow-Origin, Access-Control-Allow-Credentials
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 0
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 1235
{
"content" : [ {
"id" : "rol_789",
"createdAt" : "2025-12-04T14:43:48.630Z",
"updatedAt" : "2025-12-04T14:43:48.630Z",
"version" : 0,
"createdBy" : null,
"updatedBy" : null,
"tenantId" : "t_KRF3XMBK10BWN9JRBDZXVYD6HM",
"name" : "Test Role",
"description" : "Test role for documentation",
"ownerAdminId" : "adm_123",
"permissions" : [ {
"resource" : "user",
"action" : "read",
"effect" : "ALLOW",
"constraints" : { },
"allow" : true,
"deny" : false
}, {
"resource" : "channel",
"action" : "read",
"effect" : "ALLOW",
"constraints" : { },
"allow" : true,
"deny" : false
} ],
"features" : [ "users.read", "channels.read" ],
"global" : false
} ],
"pageable" : {
"pageNumber" : 0,
"pageSize" : 20,
"sort" : {
"empty" : false,
"sorted" : true,
"unsorted" : false
},
"offset" : 0,
"paged" : true,
"unpaged" : false
},
"totalElements" : 1,
"totalPages" : 1,
"last" : true,
"size" : 20,
"number" : 0,
"sort" : {
"empty" : false,
"sorted" : true,
"unsorted" : false
},
"numberOfElements" : 1,
"first" : true,
"empty" : false
}
Example Curl Request
$ curl 'http://localhost:8080/api/roles?owner=global&page=0&size=20&sortBy=name&sortDir=asc' -i -X GET \
-H 'X-WAL: 0x1234567890123456789012345678901234567890' \
-H 'X-SIG: 0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef12' \
-H 'X-MES: VGVzdCBtZXNzYWdlIGZvciBhdXRoZW50aWNhdGlvbg=='
Role Controller