--- title: "system.user.editRole" description: "Renames a role in the specified user source." --- # system.user.editRole > Renames a role in the specified user source. This function is used in **Python Scripting**. ## Description Renames a role in the specified user source. When altering the Gateway System User Source, the [Allow User Admin](platform\security\gateway-general-security-settings\gateway-general-security-settings.md) setting must be enabled. ## Client Permission Restrictions [Permission Type](ignition-modules\vision\vision-project-properties\vision-project-properties.md#vision-permissions-properties): User Management Client access to this scripting function is blocked to users that do not meet the role/zone requirements for the above permission type. This function is unaffected when run in the Gateway scope. ## Syntax `system.user.editRole(userSource, oldName, newName)` ### Parameters Type | Parameter | Description ------- | ------- | ------ String| `userSource` | The user source in which the role is found. Blank will use the default user source. String| `oldName` | The role to edit. Role must not be blank and must exist. String| `newName` | The new name for the role. Must not be blank. ### Returns **UIResponse** - A [UIResponse](https://sdk.inductiveautomation.com/javadoc/ignition81/latest/com/inductiveautomation/ignition/common/messages/UIResponse.html) object with lists of warnings, errors, and info about the success or failure of the edit. The contents of the lists are accessible from the getter methods. * `getWarns()` - Returns a list of warning messages that were encountered during the edit. * `getErrors()` - Returns a list of error messages that were encountered during the edit. * `getInfos()` - Returns a list of "info" messages that were encountered during the edit. These messages represent normal logging events that occurred during the edit, and can be useful when trying to visualize the events that lead up to a failure. ### Scope Gateway, Vision Client, Perspective Session ## Code Examples ```python title="Example #1" # This example edits the role "Operator" in the user source "MyUserSource" and edits it to the role "User". system.user.editRole("MyUserSource", "Operator", "User") ```