Skip to main content

Permissions

1 API call in this section.

List Permissions

Platform & Access / Permissions
GET/permissions?language=en&page=1&limit=10&role_id=&scope=

Retrieves a paginated list of permissions with optional filtering by role ID or scope. Authentication: - Requires valid authentication token Query Parameters: - language (optional): Language code for localized response messages (e.g., 'en') - page (optional): Page number for pagination (default: 1) - limit (optional): Number of records per page (default: 10) - role_id (optional): Filter permissions by role ID - scope (optional): Filter permissions by scope (e.g., 'system', 'tenant') Response Behavior: - When role_id is provided: Returns permissions assigned to the specified role - When scope is provided: Returns all permissions filtered by the specified scope - When neither is provided: Returns all permissions ordered by name

Send a bearer token in the Authorization header for an authenticated OnDi user session.
Request
curl
1curl --request GET "$ONDI_BASE_URL/permissions?language=en&page=1&limit=10&role_id=&scope=" \2  --header "Authorization: Bearer {{access_token}}"

Query parameters

languageOptional
query string

en

Language code for response localization (Optional, default: en)

pageOptional
query string

1

Page number for pagination (Optional, default: 1)

limitOptional
query string

10

Number of records per page (Optional, default: 10)

role_idOptional
query string

Filter permissions by role ID (Optional)

scopeOptional
query string

Filter permissions by scope (Optional, e.g., 'system', 'tenant')

Headers

AuthorizationOptional
header string

Bearer {{access_token}}

Responses

Success Response (All Permissions)200OK
Response body
json
1{2  "success": true,3  "message": "Permissions retrieved successfully",4  "permissions": [5    {6      "id": "perm-001",7      "name": "create:users",8      "description": "Create new users",9      "scope": "system"10    },11    {12      "id": "perm-002",13      "name": "delete:users",14      "description": "Delete existing users",15      "scope": "system"16    },17    {18      "id": "perm-003",19      "name": "manage:tenants",20      "description": "Manage tenant organizations",21      "scope": "system"22    }23  ],24  "total": 42,25  "page": 1,26  "limit": 1027}
Success Response (By Role ID)200OK
Response body
json
1{2  "success": true,3  "message": "Permissions retrieved successfully",4  "permissions": [5    {6      "id": "perm-001",7      "name": "create:users",8      "description": "Create new users",9      "scope": "system",10      "role_permissions": {11        "role_id": "role-123"12      }13    },14    {15      "id": "perm-002",16      "name": "delete:users",17      "description": "Delete existing users",18      "scope": "system",19      "role_permissions": {20        "role_id": "role-123"21      }22    }23  ],24  "total": 5,25  "page": 1,26  "limit": 1027}
Success Response (By Scope)200OK
Response body
json
1{2  "success": true,3  "message": "Permissions retrieved successfully",4  "permissions": [5    {6      "id": "perm-004",7      "name": "manage:branches",8      "description": "Manage tenant branches",9      "scope": "tenant"10    },11    {12      "id": "perm-005",13      "name": "view:reports",14      "description": "View tenant reports",15      "scope": "tenant"16    }17  ],18  "total": 15,19  "page": 1,20  "limit": 1021}
Error Response500Internal Server Error
Response body
json
1{2  "success": false,3  "message": "Internal server error"4}
Success (200 OK)200
Response body
json
1{2  "success": true,3  "message": "Permissions retrieved successfully",4  "permissions": [5    {6      "id": "permission-uuid",7      "name": "create:users",8      "description": "Create new users",9      "scope": "system"10    }11  ],12  "total": 42,13  "page": 1,14  "limit": 1015}