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:

Copy
{
  "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:

Copy
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:

Copy
{
  "successRoles": [
    "string"
  ],
  "failedRoles": [
    "string"
  ],
  "errorDetails": {
    "additionalProp1": "string",
    "additionalProp2": "string",
    "additionalProp3": "string"
  },
  "status": "100 CONTINUE"
}

Response example failure 400:

Copy
{
  "error": "string",
  "description": "string",
  "fieldErrors": [
    {
      "field": "string",
      "error": "string"
    }
  ]
}