This is the documentation page for an unsupported version of Zabbix.
Is this not what you were looking for? Switch to the current version or choose one from the drop-down menu.

drule.create

Description

object drule.create(object/array discoveryRules)

This method allows to create new discovery rules.

This method is only available to Admin and Super admin user types. Permissions to call the method can be revoked in user role settings. See User roles for more information.

Parameters

(object/array) Discovery rules to create.

Additionally to the standard discovery rule properties, the method accepts the following parameters.

Parameter Type Description
dchecks
(required)
array Discovery checks to create for the discovery rule.

Return values

(object) Returns an object containing the IDs of the created discrovery rules under the druleids property. The order of the returned IDs matches the order of the passed discrovery rules.

Examples

Create a discovery rule

Create a discovery rule to find machines running the Zabbix agent in the local network. The rule must use a single Zabbix agent check on port 10050.

Request:

{
           "jsonrpc": "2.0",
           "method": "drule.create",
           "params": {
               "name": "Zabbix agent discovery",
               "iprange": "192.168.1.1-255",
               "dchecks": [
                   {
                       "type": "9",
                       "key_": "system.uname",
                       "ports": "10050",
                       "uniq": "0"
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "druleids": [
                   "6"
               ]
           },
           "id": 1
       }

See also

Source

CDRule::create() in ui/include/classes/api/services/CDRule.php.