[comment]: # ({ddce888e-ddce888e})
# discoveryrule.get

[comment]: # ({/ddce888e-ddce888e})

[comment]: # ({e9f79f9b-b87cd1ee})
### Beschrijving

`integer/array discoveryrule.get(object parameters)`

Deze methode maakt het mogelijk om LLD-regels op te halen op basis van de opgegeven parameters.

::: noteclassic
Deze methode is beschikbaar voor gebruikers van elk type. Rechten om de methode aan te roepen kunnen worden ingetrokken in de instellingen van gebruikersrollen. Zie [Gebruikersrollen](/manual/web_interface/frontend_sections/users/user_roles) voor meer informatie.
:::

[comment]: # ({/e9f79f9b-b87cd1ee})

[comment]: # ({75667965-57007d3d})
### Parameters

`(object)` Parameters die de gewenste output definiëren.

De methode ondersteunt de volgende parameters.

|Parameter|[Type](/manual/api/reference_commentary#data_types)|Omschrijving|
|--|--|------|
|itemids|string/array|Geef alleen LLD-regels terug met de opgegeven IDs.|
|groupids|string/array|Geef alleen LLD-regels terug die behoren tot de hosts van de opgegeven groepen.|
|hostids|string/array|Geef alleen LLD-regels terug die behoren tot de opgegeven hosts.|
|inherited|boolean|Indien ingesteld op `true`, geef alleen LLD-regels terug die geërfd zijn van een sjabloon.|
|interfaceids|string/array|Geef alleen LLD-regels terug die de opgegeven hostinterfaces gebruiken.|
|monitored|boolean|Indien ingesteld op `true`, geef alleen ingeschakelde LLD-regels terug die behoren tot gemonitorde hosts.|
|templated|boolean|Indien ingesteld op `true`, geef alleen LLD-regels terug die behoren tot sjablonen.|
|templateids|string/array|Geef alleen LLD-regels terug die behoren tot de opgegeven sjablonen.|
|selectFilter|query|Geef een [filter](/manual/api/reference/discoveryrule/object#LLD_rule_filter) eigenschap terug met gegevens van de filter die door de LLD-regel wordt gebruikt.|
|selectGraphs|query|Geeft een [graphs](/manual/api/reference/graph/object) eigenschap terug met grafiek-prototypes die bij de LLD-regel horen.<br><br>Ondersteunt `count`.|
|selectHostPrototypes|query|Geef een [hostPrototypes](/manual/api/reference/hostprototype/object) eigenschap terug met host-prototypes die bij de LLD-regel horen.<br><br>Ondersteunt `count`.|
|selectHosts|query|Geef een [hosts](/manual/api/reference/host/object) eigenschap terug met een array van hosts waartoe de LLD-regel behoort.|
|selectItems|query|Geef een [items](/manual/api/reference/item/object) eigenschap terug met item-prototypes die bij de LLD-regel horen.<br><br>Ondersteunt `count`.|
|selectTriggers|query|Geef een [triggers](/manual/api/reference/trigger/object) eigenschap terug met trigger-prototypes die bij de LLD-regel horen.<br><br>Ondersteunt `count`.|
|selectLLDMacroPaths|query|Geef een [lld\_macro\_paths](/manual/api/reference/discoveryrule/object#lld_macro_path) eigenschap terug met een lijst van LLD-macro's en paden naar waarden die aan elke overeenkomstige macro zijn toegewezen.|
|selectPreprocessing|query|Geef een [preprocessing](/manual/api/reference/discoveryrule/object#lld-rule-preprocessing) eigenschap terug met opties voor voorverwerking van LLD-regels.|
|selectOverrides|query|Geef een [lld\_rule\_overrides](/manual/api/reference/discoveryrule/object#lld_rule_overrides) eigenschap terug met een lijst van override-filters, -voorwaarden en -bewerkingen die worden uitgevoerd op prototype-objecten.|
|filter|object|Geef alleen resultaten terug die exact overeenkomen met de opgegeven filter.<br><br>Accepteert een array, waarbij de sleutels eigenschapsnamen zijn en de waarden ofwel een enkele waarde of een array van waarden zijn om tegen te matchen.<br><br>Ondersteunt aanvullende filters:<br>`host` - technische naam van de host waartoe de LLD-regel behoort.|
|limitSelects|integer|Beperkt het aantal records dat wordt teruggegeven door subselecties.<br><br>Van toepassing op de volgende subselecties: `selectItems`, `selectGraphs`, `selectTriggers`.|
|sortfield|string/array|Sorteer het resultaat op de opgegeven eigenschappen.<br><br>Mogelijke waarden: `itemid`, `name`, `key_`, `delay`, `type`, `status`.|
|countOutput|boolean|Deze parameters zijn gemeenschappelijk voor alle `get`-methoden en worden in detail beschreven in de [referentie-opmerkingen](/manual/api/reference_commentary#common_get_method_parameters).|
|editable|boolean|^|
|excludeSearch|boolean|^|
|limit|integer|^|
|output|query|^|
|preservekeys|boolean|^|
|search|object|^|
|searchByAny|boolean|^|
|searchWildcardsEnabled|boolean|^|
|sortorder|string/array|^|
|startSearch|boolean|^|

[comment]: # ({/75667965-57007d3d})

[comment]: # ({7223bab1-7223bab1})
### Retourwaarden

`(integer/array)` Geeft ofwel terug:

-   een array van objecten;
-   het aantal opgehaalde objecten, indien de parameter `countOutput`
    is gebruikt.

[comment]: # ({/7223bab1-7223bab1})

[comment]: # ({b41637d2-b41637d2})
### Voorbeelden

[comment]: # ({/b41637d2-b41637d2})

[comment]: # ({c7d26f2f-5f8b5429})
#### Ophalen van ontdekkingsregels van een host

Haal alle ontdekkingsregels op voor een specifieke host-ID.

[Aanvraag](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.get",
    "params": {
        "output": "extend",
        "hostids": "10202"
    },
    "id": 1
}
```

Reactie:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "itemid": "27425",
            "type": "0",
            "snmp_oid": "",
            "hostid": "10202",
            "name": "Netwerkinterface-ontdekking",
            "key_": "net.if.discovery",
            "delay": "1u",
            "status": "0",
            "trapper_hosts": "",
            "templateid": "22444",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "interfaceid": "119",
            "description": "Ontdekking van netwerkinterfaces zoals gedefinieerd in de wereldwijde reguliere expressie \"Netwerkinterfaces voor ontdekking\".",
            "lifetime": "30d",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "3s",
            "url": "",
            "query_fields": [],
            "posts": "",
            "status_codes": "200",
            "follow_redirects": "1",
            "post_type": "0",
            "http_proxy": "",
            "headers": [],
            "retrieve_mode": "0",
            "request_method": "0",
            "ssl_cert_file": "",
            "ssl_key_file": "",
            "ssl_key_password": "",
            "verify_peer": "0",
            "verify_host": "0",
            "allow_traps": "0",
            "uuid": "",
            "state": "0",
            "error": "",
            "parameters": []
        },
        {
            "itemid": "27426",
            "type": "0",
            "snmp_oid": "",
            "hostid": "10202",
            "name": "Ontdekking van gemonteerde bestandssystemen",
            "key_": "vfs.fs.discovery",
            "delay": "1u",
            "status": "0",
            "trapper_hosts": "",
            "templateid": "22450",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "interfaceid": "119",
            "description": "Ontdekking van bestandssystemen van verschillende types zoals gedefinieerd in de wereldwijde reguliere expressie \"Bestandssystemen voor ontdekking\".",
            "lifetime": "30d",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "3s",
            "url": "",
            "query_fields": [],
            "posts": "",
            "status_codes": "200",
            "follow_redirects": "1",
            "post_type": "0",
            "http_proxy": "",
            "headers": [],
            "retrieve_mode": "0",
            "request_method": "0",
            "ssl_cert_file": "",
            "ssl_key_file": "",
            "ssl_key_password": "",
            "verify_peer": "0",
            "verify_host": "0",
            "allow_traps": "0",
            "uuid": "",
            "state": "0",
            "error": "",
            "parameters": []
        }
    ],
    "id": 1
}
```

[comment]: # ({/c7d26f2f-5f8b5429})

[comment]: # ({22ef0184-4d0af030})
#### Ophalen van filtervoorwaarden

Haal de naam op van de LLD-regel "24681" en de filtervoorwaarden ervan op. De
filter gebruikt het evaluatietype "en", dus de eigenschap `formula` is
leeg en `eval_formula` wordt automatisch gegenereerd.

[Aanvraag](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.get",
    "params": {
        "output": ["name"],
        "selectFilter": "extend",
        "itemids": ["24681"]
    },
    "id": 1
}
```

Reactie:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "itemid": "24681",
            "name": "Gefilterde LLD-regel",
            "filter": {
                "evaltype": "1",
                "formula": "",
                "conditions": [
                    {
                        "macro": "{#MACRO1}",
                        "value": "@regex1",
                        "operator": "8",
                        "formulaid": "A"
                    },
                    {
                        "macro": "{#MACRO2}",
                        "value": "@regex2",
                        "operator": "9",
                        "formulaid": "B"
                    },
                    {
                        "macro": "{#MACRO3}",
                        "value": "",
                        "operator": "12",
                        "formulaid": "C"
                    },
                    {
                        "macro": "{#MACRO4}",
                        "value": "",
                        "operator": "13",
                        "formulaid": "D"
                    }
                ],
                "eval_formula": "A en B en C en D"
            }
        }
    ],
    "id": 1
}
```

[comment]: # ({/22ef0184-4d0af030})

[comment]: # ({0bc15130-e3de6fe8})
#### LLD-regel ophalen via URL

Haal de LLD-regel op voor een host op basis van de waarde van het URL-veld van de regel. Alleen een exacte overeenkomst van de URL-string die is gedefinieerd voor de LLD-regel wordt ondersteund.

[Aanvraag](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.get",
    "params": {
        "hostids": "10257",
        "filter": {
            "type": 19,
            "url": "http://127.0.0.1/discoverer.php"
        }
    },
    "id": 1
}
```

Reactie:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "itemid": "28336",
            "type": "19",
            "snmp_oid": "",
            "hostid": "10257",
            "name": "API HTTP-agent",
            "key_": "api_discovery_rule",
            "delay": "5s",
            "status": "0",
            "trapper_hosts": "",
            "templateid": "0",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "interfaceid": "5",
            "description": "",
            "lifetime": "30d",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "3s",
            "url": "http://127.0.0.1/discoverer.php",
            "query_fields": [
                {
                    "mode": "json"
                },
                {
                    "elements": "2"
                }
            ],
            "posts": "",
            "status_codes": "200",
            "follow_redirects": "1",
            "post_type": "0",
            "http_proxy": "",
            "headers": {
                "X-Type": "api",
                "Authorization": "Bearer mF_A.B5f-2.1JcM"
            },
            "retrieve_mode": "0",
            "request_method": "1",
            "ssl_cert_file": "",
            "ssl_key_file": "",
            "ssl_key_password": "",
            "verify_peer": "0",
            "verify_host": "0",
            "allow_traps": "0",
            "uuid": "",
            "state": "0",
            "error": "",
            "parameters": []
        }
    ],
    "id": 1
}
```

[comment]: # ({/0bc15130-e3de6fe8})

[comment]: # ({5c3541f3-c0ae2d21})
#### LLD-regel met overschrijvingen ophalen

Haal een LLD-regel op die verschillende overschrijvingsinstellingen heeft.

[Aanvraag](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.get",
    "params": {
        "output": ["name"],
        "itemids": "30980",
        "selectOverrides": ["name", "step", "stop", "filter", "operations"]
    },
    "id": 1
}
```

Reactie:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "name": "Ontdek databasehost",
            "overschrijvingen": [
                {
                    "name": "Ontdek MySQL-host",
                    "step": "1",
                    "stop": "1",
                    "filter": {
                        "evaltype": "2",
                        "formula": "",
                        "conditions": [
                            {
                                "macro": "{#UNIT.NAME}",
                                "operator": "8",
                                "value": "^mysqld\\.service$",
                                "formulaid": "A"
                            },
                            {
                                "macro": "{#UNIT.NAME}",
                                "operator": "8",
                                "value": "^mariadb\\.service$",
                                "formulaid": "B"
                            }
                        ],
                        "eval_formula": "A of B"
                    },
                    "operaties": [
                        {
                            "operationobject": "3",
                            "operator": "2",
                            "value": "Databasehost",
                            "opstatus": {
                                "status": "0"
                            },
                            "optag": [
                                {
                                    "tag": "Database",
                                    "value": "MySQL"
                                }
                            ],
                            "optemplate": [
                                {
                                    "templateid": "10170"
                                }
                            ]
                        }
                    ]
                },
                {
                    "name": "Ontdek PostgreSQL-host",
                    "step": "2",
                    "stop": "1",
                    "filter": {
                        "evaltype": "0",
                        "formula": "",
                        "conditions": [
                            {
                                "macro": "{#UNIT.NAME}",
                                "operator": "8",
                                "value": "^postgresql\\.service$",
                                "formulaid": "A"
                            }
                        ],
                        "eval_formula": "A"
                    },
                    "operaties": [
                        {
                            "operationobject": "3",
                            "operator": "2",
                            "value": "Databasehost",
                            "opstatus": {
                                "status": "0"
                            },
                            "optag": [
                                {
                                    "tag": "Database",
                                    "value": "PostgreSQL"
                                }
                            ],
                            "optemplate": [
                                {
                                    "templateid": "10263"
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ],
    "id": 1
}
```

[comment]: # ({/5c3541f3-c0ae2d21})

[comment]: # ({1bec0758-f25d02bb})
### Zie ook

-   [Grafiek-prototype](/manual/api/reference/graphprototype/object#graph_prototype)
-   [Host](/manual/api/reference/host/object#host)
-   [Item-prototype](/manual/api/reference/itemprototype/object#item_prototype)
-   [LLD-regel-filter](object#lld_rule_filter)
-   [Trigger-prototype](/manual/api/reference/triggerprototype/object#trigger_prototype)

[comment]: # ({/1bec0758-f25d02bb})

[comment]: # ({e14efed8-e14efed8})
### Bron

CDiscoveryRule::get() in
*ui/include/classes/api/services/CDiscoveryRule.php*.

[comment]: # ({/e14efed8-e14efed8})
