Edit Roles
Edit roles. The role includes various permissions and settings such as administrator privileges, authorized devices, and views/actions settings. Requires admin permissions to run this API.
Resource name: /api/v1/roles
Request Method: PUT
Request parameters
| Parameter | Type | Description |
|---|---|---|
| roleName
mandatory |
string | Name of the role to be edited. |
| roleDescription | string | Description of the role. |
| ldapDn | string | The LDAP group that should automatically inherit this role. |
| landingPage | string | Default landing page (e.g., automatic, afa, aff, abf). Default: automatic. |
| administrator | string | Administrator permissions (yes/no). |
| fireflowAdmin | string | FireFlow admin privileges (yes/no). |
| enableAnalysisFromFile | string | Enable analysis from file (yes/no). |
| enableGlobalTrustTraffic | string | Enable global trust traffic (yes/no). |
| firewallProfile | string | Default permission profile (e.g., Standard, ReadOnly, None). Default: Standard. |
| authorizedViewsAndActions | object | Defines permissions for various reports and actions. |
| reportAll | string | Access to all reports (yes/no). Default: yes. |
| reportRisks | string | Access to risk reports (yes/no). Default: no. |
| reportChanges | string | Access to change reports (yes/no). Default: no. |
| reportOptimize | string | Access to optimization reports (yes/no). Default: no. |
| reportVpn | string | Access to VPN reports (yes/no). Default: no. |
| reportCompliance | string | Access to compliance reports (yes/no). Default: no. |
| reportBaseline | string | Access to baseline reports (yes/no). Default: no. |
| reportExplore | string | Access to explore reports (yes/no). Default: no. |
| reportConfig | string | Access to configuration and logs (yes/no). Default: no. |
| actionViews | string | Access to all home views (yes/no). Default: yes. |
| actionMap | string | Access to Map view (yes/no). Default: no. |
| actionMonitor | string | Access to changes view (yes/no). Default: no. |
| artPermission | string | Access to view and edit reporting tool dashboard (yes/no). |
| actionAll | string | Permissions to execute all actions (yes/no). Default: yes. |
| actionAnalyze | string | Analyze actions permissions (yes/no). Default: no. |
| actionQuery | string | Query actions permissions (yes/no). Default: no. |
| actionTrusted | string | Trusted actions permissions (yes/no). Default: no. |
| actionTopology | string | Topology actions permissions (yes/no). Default: no. |
| actionCompare | string | Compare actions permissions (yes/no). Default: no. |
| actionDelete | string | Delete actions permissions (yes/no). Default: no. |
| actionDocumentation | string | Documentation actions permissions (yes/no). Default: no. |
|
authorizedDevices mandatory |
array | List of authorized devices for the user. |
| id | string | Device ID. |
| displayName
mandatory |
string | Display name of the device. |
| profile | string | Authorization profile for the device (Standard/ReadOnly/None). Default: Standard. |
| notification | string | Receive notifications for this device (yes/no). Default: yes. |
Request example:
{
"roleName": "Role",
"roleDescription": "Example role",
"ldapDn": "string",
"landingPage": "automatic",
"administrator": "no",
"fireflowAdmin": "no",
"enableAnalysisFromFile": "no",
"enableGlobalTrustTraffic": "no",
"authorizedViewsAndActions": {
"reportAll": "yes",
"reportRisks": "no",
"reportChanges": "no",
"reportOptimize": "no",
"reportVpn": "no",
"reportCompliance": "no",
"reportBaseline": "no",
"reportExplore": "no",
"reportConfig": "no",
"actionViews": "yes",
"actionMap": "no",
"actionMonitor": "no",
"artPermission": "yes",
"actionAll": "yes",
"actionAnalyze": "no",
"actionQuery": "no",
"actionTrusted": "no",
"actionTopology": "no",
"actionCompare": "no",
"actionDelete": "no",
"actionDocumentation": "no"
},
"firewallProfile": "Standard",
"authorizedDevices": [
{
"id": "device123",
"displayName": "device123",
"profile": "Standard",
"notification": "yes"
}
]
}
cUrl Example:
curl -X 'PUT' \
'https://<localhost>/afa/api/v1/roles' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"roleName": "Role",
"roleDescription": "Example role",
"ldapDn": "string",
"landingPage": "automatic",
"administrator": "no",
"fireflowAdmin": "no",
"enableAnalysisFromFile": "no",
"enableGlobalTrustTraffic": "no",
"authorizedViewsAndActions": {
"reportAll": "yes",
"reportRisks": "no",
"reportChanges": "no",
"reportOptimize": "no",
"reportVpn": "no",
"reportCompliance": "no",
"reportBaseline": "no",
"reportExplore": "no",
"reportConfig": "no",
"actionViews": "yes",
"actionMap": "no",
"actionMonitor": "no",
"artPermission": "yes",
"actionAll": "yes",
"actionAnalyze": "no",
"actionQuery": "no",
"actionTrusted": "no",
"actionTopology": "no",
"actionCompare": "no",
"actionDelete": "no",
"actionDocumentation": "no"
},
"firewallProfile": "Standard",
"authorizedDevices": [
{
"id": "device123",
"displayName": "device123",
"profile": "Standard",
"notification": "yes"
}
]
}'
Status codes
| Code | Description |
|---|---|
| 200 | OK |
| 400 | Bad Request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 500 | Internal Server Error |
Response parameters
| Parameter | Type | Description |
|---|---|---|
| successRoles | array | List of successfully edited roles. |
| failedRoles | array | List of roles that failed to update. |
| errorDetails | object | Details about any errors encountered. |
Response example success 200:
{
"successRoles": [
"string"
],
"failedRoles": [
"string"
],
"errorDetails": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
},
"status": "100 CONTINUE"
}
Response example failure 400:
{
"error": "string",
"description": "string",
"fieldErrors": [
{
"field": "string",
"error": "string"
}
]
}