discoveryruleprototype_get
Fetch LLD rule prototypes to create multi-level discovery in Zabbix, enabling discovery rules on hosts discovered by parent rules.
Instructions
Retrieve LLD rule prototypes (Zabbix 7.4+). LLD rule prototypes allow discovery rules to be created on hosts that are themselves discovered by a parent LLD rule, enabling multi-level (nested) discovery.
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: allow_traps, authtype, delay, discover, enabled_lifetime, enabled_lifetime_type, flags, follow_redirects, granularity (8.0+), history, hostid, http_proxy, interfaceid, inventory_link, ipmi_sensor, itemid, jmx_endpoint, key_, lifetime, lifetime_type, logtimefmt, lookback_limit (8.0+), master_itemid, name, output_format, password, post_type, privatekey, publickey, query (8.0+), request_method, retrieve_mode, snmp_oid, ssl_cert_file, ssl_key_file, ssl_key_password, status, status_codes, storage_mode (8.0+), templateid, time_shift (8.0+), timeout, trapper_hosts, trends, type, units, url, username, uuid, value_type, valuemapid, verify_host, verify_peer. Text properties cannot be filtered; use 'search' for them. | |
| output | No | Properties of the discoveryruleprototype 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: itemid, hostid, name, key_, status. Properties: allow_traps, authtype, delay, description, discover, enabled_lifetime, enabled_lifetime_type, error, flags, follow_redirects, granularity (8.0+), headers, history, hostid, http_proxy, interfaceid, inventory_link, ipmi_sensor, itemid, jmx_endpoint, key_, lifetime, lifetime_type, logtimefmt, lookback_limit (8.0+), master_itemid, name, output_format, parameters, params, password, post_type, posts, privatekey, publickey, query (8.0+), query_fields, request_method, retrieve_mode, ruleid, snmp_oid, ssl_cert_file, ssl_key_file, ssl_key_password, state, status, status_codes, storage_mode (8.0+), templateid, time_shift (8.0+), timeout, trapper_hosts, trends, type, units, url, username, uuid, value_type, valuemapid, verify_host, verify_peer. | |
| search | No | Return results whose string properties contain the given pattern (case-insensitive; '*' is a wildcard when searchWildcardsEnabled is true). Example: {"name": "web"}. Keys: delay, description, enabled_lifetime, granularity (8.0+), history, http_proxy, ipmi_sensor, jmx_endpoint, key_, lifetime, logtimefmt, lookback_limit (8.0+), name, params, password, posts, privatekey, publickey, snmp_oid, ssl_cert_file, ssl_key_file, ssl_key_password, status_codes, time_shift (8.0+), timeout, trapper_hosts, trends, units, url, username, uuid. | |
| server | No | Target Zabbix server. Available: default. Defaults to 'default' if omitted. | |
| hostids | No | Return only LLD rule prototypes that belong to the given hosts. | |
| 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: itemid, name, key_, delay, type, status (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). | |
| discoveryids | No | Return only LLD rule prototypes with the given IDs. | |
| extra_params | No | Other native discoveryruleprototype.get parameters, merged into the request as-is. Parameters: groupids, inherited, interfaceids, itemids, limitSelects, monitored, templated, templateids. Sub-object selects (value 'extend', 'count' or a list of property names): selectDiscoveryRule, selectDiscoveryRulePrototype, selectDiscoveryRulePrototypes, selectFilter, selectGraphs, selectHostPrototypes, selectHosts, selectItems, selectLLDMacroPaths, selectOverrides, selectPreprocessing, selectTriggers. 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 |