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

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

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

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

Die Methode ermöglicht das Abrufen von LLD-Regeln gemäß den angegebenen
Parametern.

::: noteclassic
Diese Methode ist für Benutzer aller Typen verfügbar. Die Berechtigungen
zum Aufrufen der Methode können in den Einstellungen der Benutzerrolle widerrufen werden. Weitere Informationen finden Sie unter [Benutzerrollen](/manual/web_interface/frontend_sections/users/user_roles).
:::

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

[comment]: # ({ae0c9661-57007d3d})
### Parameter

`(object)` Parameter, die die gewünschte Ausgabe definieren.

Die Methode unterstützt die folgenden Parameter.

|Parameter|[Type](/manual/api/reference_commentary#data-types)|Beschreibung|
|--|--|------|
|itemids|ID/array|Gibt nur LLD-Regeln mit den angegebenen IDs zurück.|
|groupids|ID/array|Gibt nur LLD-Regeln zurück, die zu den Hosts aus den angegebenen Gruppen gehören.|
|hostids|ID/array|Gibt nur LLD-Regeln zurück, die zu den angegebenen Hosts gehören.|
|inherited|boolean|Wenn auf `true` gesetzt, werden nur von einer Vorlage geerbte LLD-Regeln zurückgegeben.|
|interfaceids|ID/array|Gibt nur LLD-Regeln zurück, die die angegebenen Host-Schnittstellen verwenden.|
|monitored|boolean|Wenn auf `true` gesetzt, werden nur aktivierte LLD-Regeln zurückgegeben, die zu überwachten Hosts gehören.|
|templated|boolean|Wenn auf `true` gesetzt, werden nur LLD-Regeln zurückgegeben, die zu Vorlagen gehören.|
|templateids|ID/array|Gibt nur LLD-Regeln zurück, die zu den angegebenen Vorlagen gehören.|
|selectDiscoveryData|query|Gibt eine `discoveryData`-Eigenschaft mit den Objektdaten der LLD-Regelerkennung zurück. Das LLD-Regelerkennungsobjekt verknüpft eine erkannte LLD-Regel mit einem LLD-Regelprototyp, aus dem sie erkannt wurde.|
|selectDiscoveryRulePrototypes|query|Gibt eine Eigenschaft [`discoveryRulePrototypes`](/manual/api/reference/discoveryruleprototype/object) mit LLD-Regelprototypen zurück, die zur LLD-Regel gehören.<br><br>Unterstützt `count`.|
|selectFilter|query|Gibt eine Eigenschaft [`filter`](/manual/api/reference/discoveryrule/object#lld-rule-filter) mit Daten des von der LLD-Regel verwendeten Filters zurück.|
|selectGraphs|query|Gibt eine Eigenschaft [`graphs`](/manual/api/reference/graph/object) mit Graphprototypen zurück, die zur LLD-Regel gehören.<br><br>Unterstützt `count`.|
|selectHostPrototypes|query|Gibt eine Eigenschaft [`hostPrototypes`](/manual/api/reference/hostprototype/object) mit Host-Prototypen zurück, die zur LLD-Regel gehören.<br><br>Unterstützt `count`.|
|selectHosts|query|Gibt eine Eigenschaft [`hosts`](/manual/api/reference/host/object) mit einem Array von Hosts zurück, zu denen die LLD-Regel gehört.|
|selectItems|query|Gibt eine Eigenschaft [`items`](/manual/api/reference/item/object) mit Datenpunktprototypen zurück, die zur LLD-Regel gehören.<br><br>Unterstützt `count`.|
|selectTriggers|query|Gibt eine Eigenschaft [`triggers`](/manual/api/reference/trigger/object) mit Auslöserprototypen zurück, die zur LLD-Regel gehören.<br><br>Unterstützt `count`.|
|selectLLDMacroPaths|query|Gibt eine Eigenschaft [`lld_macro_paths`](/manual/api/reference/discoveryrule/object#lld-macro-path) mit einer Liste von LLD-Makros und Pfaden zu Werten zurück, die jedem entsprechenden Makro zugewiesen sind.|
|selectPreprocessing|query|Gibt eine Eigenschaft [`preprocessing`](/manual/api/reference/discoveryrule/object#lld-rule-preprocessing) mit Vorverarbeitungsoptionen der LLD-Regel zurück.|
|selectOverrides|query|Gibt eine Eigenschaft [`lld_rule_overrides`](/manual/api/reference/discoveryrule/object#lld-rule-overrides) mit einer Liste von Überschreibungsfiltern, Bedingungen und Operationen zurück, die auf Prototypobjekte angewendet werden.|
|filter|object|Gibt nur Ergebnisse zurück, die exakt mit dem angegebenen Filter übereinstimmen.<br><br>Akzeptiert ein Objekt, bei dem die Schlüssel Eigenschaftsnamen sind und die Werte entweder ein einzelner Wert oder ein Array von Werten sind, mit denen abgeglichen wird.<br><br>Unterstützt keine Eigenschaften des [Datentyps](/manual/api/reference_commentary#data-types) `text`.<br><br>Unterstützt zusätzliche Eigenschaften:<br>`host` - technischer Name des Hosts, zu dem die LLD-Regel gehört.|
|limitSelects|integer|Begrenzt die Anzahl der von Unterabfragen zurückgegebenen Datensätze.<br><br>Gilt für die folgenden Unterabfragen: `selectItems`, `selectGraphs`, `selectTriggers`.|
|sortfield|string/array|Sortiert das Ergebnis nach den angegebenen Eigenschaften.<br><br>Mögliche Werte: `itemid`, `name`, `key_`, `delay`, `type`, `status`.|
|countOutput|boolean|Diese Parameter werden in der [Referenzkommentierung](/manual/api/reference_commentary#common-get-method-parameters) beschrieben.|
|editable|boolean|^|
|excludeSearch|boolean|^|
|limit|integer|^|
|output|query|^|
|preservekeys|boolean|^|
|search|object|^|
|searchByAny|boolean|^|
|searchWildcardsEnabled|boolean|^|
|sortorder|string/array|^|
|startSearch|boolean|^|

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

[comment]: # ({7223bab1-7223bab1})
### Rückgabewerte

`(integer/array)` Gibt entweder zurück:

-   ein Array von Objekten;
-   die Anzahl der abgerufenen Objekte, wenn der Parameter `countOutput` verwendet wurde.

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

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

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

[comment]: # ({ab9d9991-5f8b5429})
#### Abrufen von Discovery-Regeln von einem Host

Rufen Sie alle Discovery-Regeln für eine bestimmte Host-ID ab.

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

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

Antwort:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "itemid": "27425",
            "type": "0",
            "snmp_oid": "",
            "hostid": "10202",
            "name": "Netzwerkschnittstellen-Discovery",
            "key_": "net.if.discovery",
            "delay": "1h",
            "status": "0",
            "trapper_hosts": "",
            "templateid": "22444",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "flags": "1",
            "interfaceid": "119",
            "description": "Discovery von Netzwerkschnittstellen, wie in der globalen regulären Ausdrucksdefinition \"Network interfaces for discovery\" festgelegt.",
            "lifetime": "30d",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "",
            "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": "",
            "lifetime_type": "0",
            "enabled_lifetime_type": "2",
            "enabled_lifetime": "0",
            "state": "0",
            "error": "",
            "parameters": []
        },
        {
            "itemid": "27426",
            "type": "0",
            "snmp_oid": "",
            "hostid": "10202",
            "name": "Discovery eingehängter Dateisysteme",
            "key_": "vfs.fs.discovery",
            "delay": "1h",
            "status": "0",
            "trapper_hosts": "",
            "templateid": "22450",
            "valuemapid": "0",
            "params": "",
            "ipmi_sensor": "",
            "authtype": "0",
            "username": "",
            "password": "",
            "publickey": "",
            "privatekey": "",
            "flags": "1",
            "interfaceid": "119",
            "description": "Discovery von Dateisystemen unterschiedlicher Typen, wie in der globalen regulären Ausdrucksdefinition \"File systems for discovery\" festgelegt.",
            "lifetime": "30d",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "",
            "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": "",
            "lifetime_type": "0",
            "enabled_lifetime_type": "2",
            "enabled_lifetime": "0",
            "state": "0",
            "error": "",
            "parameters": []
        }
    ],
    "id": 1
}
```

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

[comment]: # ({22ef0184-4d0af030})
#### Abrufen von Filterbedingungen

Rufen Sie den Namen der LLD-Regel "24681" und ihre Filterbedingungen ab. Der
Filter verwendet den Auswertungstyp "and", daher ist die Eigenschaft `formula`
leer und `eval_formula` wird automatisch generiert.

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

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

Antwort:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "itemid": "24681",
            "name": "Filtered LLD rule",
            "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 and B and C and D"
            }
        }
    ],
    "id": 1
}
```

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

[comment]: # ({6830cd5d-e3de6fe8})
#### LLD-Regel über URL abrufen

LLD-Regel für einen Host anhand des Werts des URL-Felds der Regel abrufen. Unterstützt wird nur die exakte Übereinstimmung der für die LLD-Regel definierten URL-Zeichenfolge.

[Anfrage](/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
}
```

Antwort:

```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": "",
            "flags": "1",
            "interfaceid": "5",
            "description": "",
            "lifetime": "30d",
            "jmx_endpoint": "",
            "master_itemid": "0",
            "timeout": "",
            "url": "http://127.0.0.1/discoverer.php",
            "query_fields": [
                {
                    "name": "mode",
                    "value": "json"
                },
                {
                    "name": "elements",
                    "value": "2"
                }
            ],
            "posts": "",
            "status_codes": "200",
            "follow_redirects": "1",
            "post_type": "0",
            "http_proxy": "",
            "headers": [
                {
                    "name" : "X-Type",
                    "value": "api"
                },
                {
                    "name": "Authorization",
                    "value": "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": "",
            "lifetime_type": "0",
            "enabled_lifetime_type": "2",
            "enabled_lifetime": "0",
            "state": "0",
            "error": "",
            "parameters": []
        }
    ],
    "id": 1
}
```

[comment]: # ({/6830cd5d-e3de6fe8})

[comment]: # ({cbbe028e-c0ae2d21})
#### LLD-Regel mit Überschreibungen abrufen

Rufen Sie eine LLD-Regel ab, die verschiedene Überschreibungseinstellungen hat.

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

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

Antwort:

```json
{
    "jsonrpc": "2.0",
    "result": [
        {
            "name": "Discover database host",
            "overrides": [
                {
                    "name": "Discover 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 or B"
                    },
                    "operations": [
                        {
                            "operationobject": "3",
                            "operator": "2",
                            "value": "Database host",
                            "opstatus": {
                                "status": "0"
                            },
                            "optag": [
                                {
                                    "tag": "database",
                                    "value": "mysql"
                                }
                            ],
                            "optemplate": [
                                {
                                    "templateid": "10170"
                                }
                            ]
                        }
                    ]
                },
                {
                    "name": "Discover PostgreSQL host",
                    "step": "2",
                    "stop": "1",
                    "filter": {
                        "evaltype": "0",
                        "formula": "",
                        "conditions": [
                            {
                                "macro": "{#UNIT.NAME}",
                                "operator": "8",
                                "value": "^postgresql\\.service$",
                                "formulaid": "A"
                            }
                        ],
                        "eval_formula": "A"
                    },
                    "operations": [
                        {
                            "operationobject": "3",
                            "operator": "2",
                            "value": "Database host",
                            "opstatus": {
                                "status": "0"
                            },
                            "optag": [
                                {
                                    "tag": "database",
                                    "value": "postgresql"
                                }
                            ],
                            "optemplate": [
                                {
                                    "templateid": "10263"
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    ],
    "id": 1
}
```

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

[comment]: # ({590f198c-f25d02bb})
### Siehe auch

-   [Graph-Prototyp](/manual/api/reference/graphprototype/object#graph-prototype)
-   [Host](/manual/api/reference/host/object#host)
-   [Datenpunkt-Prototyp](/manual/api/reference/itemprototype/object#item-prototype)
-   [LLD-Regelfilter](object#lld-rule-filter)
-   [Auslöser-Prototyp](/manual/api/reference/triggerprototype/object#trigger-prototype)

[comment]: # ({/590f198c-f25d02bb})

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

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

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