Audience: Application developers
Editorial status: Published — Source Validated
Product: FeraAuth
Classification: administrative
GET /api/v1/permissions
Overview
Implements controller.list in routes/api/v1/permission/routes.js:23. The x-auth-token middleware verifies the JWT and the service then enforces live-session, instance, and endpoint-specific permission requirements.
Deprecated compatibility paths
GET /api/permissions
Use the versioned canonical path for new integrations.
Authentication and access
Security scheme: authToken
| Control | Contract |
|---|---|
| Authentication | authenticated |
| Authorization | PERMISSION.VIEW for GET; PERMISSION.EDIT for POST |
| Licensing | FeraAuth does not evaluate product licenses; consuming products establish access by provisioning FeraAuth instance assignments and permissions. |
| Instance Context | The authenticated token, instance header/body value, or route value selects the application instance used for session and permission evaluation. |
| Ownership | Instance-scoped grants control access; a caller cannot cross into an unrelated instance merely by supplying another resource identifier. |
Parameters
No operation parameters.
Request body
No request body.
Example request
cURL
curl --request GET \ \
--url 'https://auth.feradel.com/api/v1/permissions' \
--header 'x-auth-token: $FERA_AUTH_TOKEN'
Responses
200 The source-traced FeraAuth handler completed and returned its identity, permission, session, or administration representation.
Content type: application/json; schema: AuthSuccess
{
"success": true,
"uuid": "715c9ebb-0470-11f1-a928-0ed2cd1b87df",
"items": [],
"fatal": false,
"status": 200
}
400 Validation, credentials, instance context, or command fields are invalid.
Content type: application/json; schema: AuthError
{
"success": false,
"error": {
"status": 400,
"message": "Invalid credentials"
}
}
401 The x-auth-token is missing, invalid, or references an expired session.
Content type: application/json; schema: AuthError
{
"success": false,
"error": {
"status": 401,
"message": "Unauthorized"
}
}
403 The identity lacks the required instance-scoped permission or administrative grant.
Content type: application/json; schema: AuthError
{
"success": false,
"error": {
"status": 403,
"message": "Permission denied"
}
}
500 An unexpected persistence, delivery, or internal identity failure occurred.
Content type: application/json; schema: AuthError
{
"success": false,
"error": {
"status": 500,
"message": "Unable to complete request"
}
}
Status and retry matrix
| Status | Condition | Retryable | Developer action |
|---|---|---|---|
200 |
The source-traced FeraAuth handler completed and returned its identity, permission, session, or administration representation. | No | Continue with the returned identity representation. |
400 |
Validation, credentials, instance context, or command fields are invalid. | No | Correct the documented credential, permission, state, or dependency condition before retrying. |
401 |
The x-auth-token is missing, invalid, or references an expired session. | No | Correct the documented credential, permission, state, or dependency condition before retrying. |
403 |
The identity lacks the required instance-scoped permission or administrative grant. | No | Correct the documented credential, permission, state, or dependency condition before retrying. |
500 |
An unexpected persistence, delivery, or internal identity failure occurred. | Yes | Correct the documented credential, permission, state, or dependency condition before retrying. |
Related operations and events
- Operation
auth_post_permissions - Operation
auth_get_permissionsCheckPNamed} - Operation
auth_get_permissionsCheckKeyPNamed} - Operation
auth_delete_permissionsIInstanceNName} - Operation
auth_get_permissionsMe - Operation
auth_get_permissionsUserIUuid} - Operation
auth_get_permissionsUpdateVValueUUuidNName}
Source trace
Repository: feradelinc/feradel.auth.api
Branch: agent/auth-security-hardening
Commit: 8e09b7213fdbc5e0e1552d5271dbeee768e9dd88
Route: routes/api/v1/permission/routes.js
Handler: controller.list
Contract: OpenAPI 3.1, source-traced and publication-validated.