--- title: "hasRole" description: "Returns true if the user has the given role. The username and usersource parameters are optional in the client scope, but required in the Gateway scope." --- # hasRole > Returns true if the user has the given role. The username and usersource parameters are optional in the client scope, but required in the Gateway scope. **This function is used by Ignition's Expression language.**. ## Description Returns true if the user has the given role. The username and usersource parameters are optional in the client scope, but required in the Gateway scope. ## Syntax ` hasRole(role[, username][, usersource])` - Parameters - string **role** - The name of a role. - string **username** - Optional. A username. Defaults to the current user. - string **usersource** - Optional. The usersource of the username. Defaults to the usersource of the current user. - Results - Bool - True if the specified user has the specified role, False if not. ## Examples ```python title="Code Snippet" // This is an example using the default user and userSource: hasRole("Administrator", "admin", "default") ``` ```python title="Code Snippet" // This is an example using the current user and default userSource in the client scope: hasRole("Administrator") ```