Skip to main content

Edit Role

Modify an existing role definition in RSA Governance & Lifecycle.

POST https://instance.securid.com/aveksa/command.submit?cmd=editRole&roleId=2001

Purpose​

The editRole command modifies an existing role definition in the system. It fetches the latest version of the specified role and applies the supplied changes. The modified role enters a pending state and requires the commitRole command to transition into a committed state.

Only users with appropriate permissions (role owner, backup owner, or administrators with role edit entitlements) can execute this command.

Request​

Parameters (URL Query)​

ParameterTypeRequirementDescription
cmdstringCommand name: editRole.
roleIdintegerThe ID of the role to update. Must be passed as a URL query parameter, not in the request body.
formatstringOptionalThe response format:

properties: (Default) Key-value format (key=value). If multiple objects return, values are comma-separated.

json: JavaScript Object Notation format. Suitable for programmatic parsing.
tokenstringDeprecatedSession token retrieved from loginUser. Deprecated. Use the Authorization request header instead.

Request Headers​

HeaderTypeRequirementDescription
AuthorizationstringBearer token for a user with system administrator privileges, obtained via loginUser. Format: Bearer <token>.
Content-TypestringMust be application/json.
AcceptstringOptionalDesired response MIME type (for example, application/json or text/plain).
note

The Authorization request header replaces the deprecated token URL query parameter.

Token Type Requirement

Role management commands currently require an authenticated user session token obtained via loginUser with the Role Administrator capability. While the Web Services Administration console allows mapping Role commands to a Trusted Application, requests using a Trusted Application token (loginTrustedApp) currently return HTTP 403 (Not authorized to edit role).

Request Body (JSON)​

The request body must contain a JSON object with the role fields to update.

important
  • Do not include roleId in the JSON body. It must be passed as a URL query parameter.
  • Do not include roleRawName in the JSON body. Role raw names are immutable and cannot be modified during edit operations.
FieldTypeRequirementDescription
roleNamestringDisplay name of the role. Maximum 256 characters.
longDescriptionstringDetailed description of the role. Maximum 4000 characters.
roleSetIdintegerID of the role set to which this role belongs. Must be a valid existing role set ID.
availableForRequestintegerIndicates whether the role is available for user requests: 1 (yes) or 0 (no).
shortDescriptionstringOptionalShort summary describing the role. Maximum 256 characters.
helpLinkstringOptionalURL pointing to help documentation for the role (e.g., https://help.example.com/role). Maximum 256 characters.
ownerintegerOptionalUser ID of the primary owner. If omitted, no owner is assigned.
backupOwnerintegerOptionalUser ID of the backup owner. If omitted, no backup owner is assigned.
disabledbooleanOptionalWhether the role is disabled: true (disabled) or false (enabled).
roleTypestringOptionalRole type code. Acceptable values: "GR" (Global Role), "TR" (Technical Role), or "BR" (Business Role). Defaults to "BR" if null or omitted.

Request Payload Example​

{
"roleName": "Senior Financial Auditor",
"longDescription": "Grants elevated read and supervisory audit review access across financial modules.",
"shortDescription": "Senior financial auditing business role",
"helpLink": "https://help.example.com/roles/senior-auditor",
"availableForRequest": 1,
"owner": 1001,
"backupOwner": 1002,
"disabled": false,
"roleSetId": 101,
"roleType": "BR"
}

Response​

Parameters​

ParameterTypeDescription
roleVersionIdintegerVersion ID of the updated role in pending state. Required when calling commitRole.
statusstringExecution result: success or failure.
messagestringOptional diagnostic or informational details regarding the operation.

Examples​

Request​

curl -X POST \
"https://instance.securid.com/aveksa/command.submit?cmd=editRole&roleId=2001&format=json" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"roleName": "Senior Financial Auditor",
"longDescription": "Grants elevated read and supervisory audit review access across financial modules.",
"shortDescription": "Senior financial auditing business role",
"helpLink": "https://help.example.com/roles/senior-auditor",
"availableForRequest": 1,
"owner": 1001,
"backupOwner": 1002,
"disabled": false,
"roleSetId": 101,
"roleType": "BR"
}'

Response​

JSON Format (format=json):

{
"status": "success",
"roleVersionId": 5013,
"message": "Role 2001 updated successfully in pending state."
}

Properties Format (format=properties):

status=success
roleVersionId=5013
message=Role 2001 updated successfully in pending state.

Verified with RSA Governance & Lifecycle version 8.0.0.

References​