mfa_get
Retrieve configured Zabbix MFA methods, such as TOTP and Duo, to audit available login second factors and their user-group assignments.
Instructions
Retrieve multi-factor authentication methods configured in Zabbix. MFA methods define the second factor required at login: TOTP (time-based one-time password via apps like Google Authenticator) or Duo Universal Prompt. MFA methods are assigned to user groups to enforce per-group MFA requirements. Use this to audit which MFA methods are available and their configuration.
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]}. Only these keys are accepted: mfaid, type. Text properties cannot be filtered; use 'search' for them. | |
| mfaids | No | Return only MFA methods with the given IDs. | |
| output | No | Properties of the mfa 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: mfaid, name, type. Properties: api_hostname, clientid, code_length, hash_function, mfaid, name, type. | |
| search | No | Return results whose string properties contain the given pattern (case-insensitive; '*' is a wildcard when searchWildcardsEnabled is true). Example: {"name": "web"}. Only these keys are accepted: name. | |
| server | No | Target Zabbix server. Available: default. Defaults to 'default' if omitted. | |
| 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: 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 mfa.get parameters, merged into the request as-is. Sub-object selects (value 'extend', 'count' or a list of property names): selectUsrgrps. 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 |