role_get
Retrieve Zabbix user roles and their RBAC permissions, including visible UI sections, allowed API methods, and permitted actions, with optional rule details.
Instructions
Retrieve user roles. Roles define what a user can do in Zabbix via granular RBAC rules: which UI sections are visible, which API methods are allowed, and what actions (acknowledge, close, suppress) are permitted. Built-in roles: Super admin (type=3), Admin (type=2), User (type=1), Guest (type=4). Use selectRules to include the full permission rule set for each role.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results to return. | |
| filter | No | Return only results whose properties exactly match the given values (a single value or a list of values per key). Example: {"status": 0} or {"status": [0, 1]}. Keys: name, readonly, roleid, type. Text properties cannot be filtered; use 'search' for them. | |
| output | No | Properties of the role object to return. Pass 'extend' for all, 'count' for the number of matches only, or a comma-separated list of property names. Default when omitted: roleid, name, type. Properties: name, readonly, roleid, type. | |
| search | No | Return results whose string properties contain the given pattern (case-insensitive; '*' is a wildcard when searchWildcardsEnabled is true). Example: {"name": "web"}. Keys: name. | |
| server | No | Target Zabbix server. Available: default. Defaults to 'default' if omitted. | |
| roleids | No | Return only roles with the given IDs. | |
| raw_json | No | Strips the security disclaimer preamble from the response so it is pure JSON. Default: false. Requires the bearer token to have 'allow_raw_json' explicitly enabled by an operator in the admin portal - tokens without that policy receive a PolicyError instead. WARNING: setting true bypasses the prompt-injection mitigation marker that wraps untrusted Zabbix data (host names, item descriptions, problem text). LLM clients (Claude, GPT, Cursor, ...) should leave this false; only programmatic non-LLM consumers (Python scripts, n8n workflows that json.loads the result) should set true. | |
| sortfield | No | Sort by one or more of: roleid, name (comma-separated for several; pair with 'sortorder'). No other property is sortable. | |
| sortorder | No | Sort order: 'ASC' (ascending) or 'DESC' (descending). | |
| countOutput | No | Return the count of matching results instead of the actual data. | |
| searchByAny | No | If true, return results matching ANY search field (OR). Default is ALL fields (AND). | |
| extra_params | No | Other native role.get parameters, merged into the request as-is. Parameters: current (8.0+). Sub-object selects (value 'extend', 'count' or a list of property names): selectRules, selectUsers. Any other key is refused here, because Zabbix would silently ignore it. For a parameter you are sure exists on your release but is not listed, use zabbix_raw_api_call. | |
| searchWildcardsEnabled | No | If true, enable * and ? wildcards in search patterns. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |