[comment]: # translation:outdated

[comment]: # ({d756b50a-d756b50a})
# discoveryrule.update

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

[comment]: # ({2b3f34e0-0d23e0d8})
### Description

`object discoveryrule.update(object/array lldRules)`

Cette méthode permet de mettre à jour les règles de découverte bas niveau existantes.

::: noteclassic
Cette méthode est uniquement disponible pour les utilisateurs type *Admin* et *Super admin*. Les autorisations d'appel de la méthode peuvent être révoquées dans les paramètres du rôle utilisateur. Voir les [rôles utilisateur](/manual/web_interface/frontend_sections/administration/user_roles) pour plus d'informations.
:::

[comment]: # ({/2b3f34e0-0d23e0d8})

[comment]: # ({ef497905-cf98658c})
### Paramètres

`(object/array)` Propriété des règles de découverte bas niveau à mettre à jour.

La propriété `itemid` doit être définie pour chaque règle, toutes les autres propriétés sont facultatives. Seules les propriétés transmises seront mises à jour, toutes les autres resteront inchangées.

En plus des propriété de l'objet [règle de découverte bas niveau standard](object#lld_rule), la méthode accepte les paramètres suivants.

|Paramètre|[Type](/manual/api/reference_commentary#data_types)|Description|
|---------|---------------------------------------------------|-----------|
|filter|object|Objet de [filtre](/manual/api/reference/discoveryrule/object#lld_rule_filter) de règle LLD pour remplacer le filtre actuel.|
|preprocessing|array|Options de [prétraitement](/manual/api/reference/discoveryrule/object#lld_rule_preprocessing) des règles LLD pour remplacer les options de prétraitement actuelles.|
|lld\_macro\_paths|array|Options [lld\_macro\_path](/manual/api/reference/discoveryrule/object#lld_macro_path) de la règle LLD.|
|overrides|array|Options de [remplacement](/manual/api/reference/discoveryrule/object#lld_rule_overrides).|

[comment]: # ({/ef497905-cf98658c})

[comment]: # ({6f962e26-6f962e26})
### Valeurs retournées

`(object)` Retourne un objet contenant les identifiants des règles mises à jour sous la propriété `itemids`.

[comment]: # ({/6f962e26-6f962e26})

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

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

[comment]: # ({662fc064-67c9278f})
#### Ajout d'un filtre à une règle de découverte bas niveau

Ajoutez un filtre afin que le contenu de la macro *{\#FSTYPE}* corresponde à l'expression régulière *\@File systems for discovery*.

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.update",
    "params": {
        "itemid": "22450",
        "filter": {
            "evaltype": 1,
            "conditions": [
                {
                    "macro": "{#FSTYPE}",
                    "value": "@File systems for discovery"
                }
            ]
        }
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Réponse :

``` {.java}
{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "22450"
        ]
    },
    "id": 1
}
```

[comment]: # ({/662fc064-67c9278f})

[comment]: # ({4049a9e6-f3fd4d6c})
#### Ajouter des chemins de macro LLD

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.update",
    "params": {
        "itemid": "22450",
        "lld_macro_paths": [
            {
                "lld_macro": "{#MACRO1}",
                "path": "$.json.path"
            }
        ]
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Réponse :

``` {.java}
{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "22450"
        ]
    },
    "id": 1
}
```

[comment]: # ({/4049a9e6-f3fd4d6c})

[comment]: # ({6c1ae6a0-8d8cc019})
#### Désactivation des traps

Désactiver les traps d'une règle

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.update",
    "params": {
        "itemid": "28336",
        "allow_traps": "0"
    },
    "id": 36,
    "auth": "d678e0b85688ce578ff061bd29a20d3b"
}
```

Réponse :

``` {.java}
{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "28336"
        ]
    },
    "id": 36
}
```

[comment]: # ({/6c1ae6a0-8d8cc019})

[comment]: # ({b3efd3af-bef0a5f5})
#### Mise à jour des options de prétraitement des règles LLD

Mettre à jour une règle LLD avec la règle de prétraitement “JSONPath”.

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.update",
    "params": {
        "itemid": "44211",
        "preprocessing": [
            {
                "type": "12",
                "params": "$.path.to.json",
                "error_handler": "2",
                "error_handler_params": "5"
            }
        ]
    },
    "auth": "700ca65537074ec963db7efabda78259",
    "id": 1
}
```

Réponse :

``` {.java}
{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "44211"
        ]
    },
    "id": 1
}
```

[comment]: # ({/b3efd3af-bef0a5f5})

[comment]: # ({050e40eb-3f18a1c3})
#### Mise à jour du script de règle LLD

Mettre à jour un script de règle LLD avec un script différent et supprimer les paramètres inutiles qui ont été utilisés par le script précédent.

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "discoveryrule.update",
    "params": {
        "itemid": "23865",
        "parameters": [],
        "script": "Zabbix.Log(3, 'Log test');\nreturn 1;"
    },
    "auth": "700ca65537074ec963db7efabda78259",
    "id": 1
}
```

Réponse :

``` {.java}
{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "23865"
        ]
    },
    "id": 1
}
```

[comment]: # ({/050e40eb-3f18a1c3})

[comment]: # ({6a73b645-6a73b645})
### Source

CDiscoveryRule::update() dans *ui/include/classes/api/services/CDiscoveryRule.php*.

[comment]: # ({/6a73b645-6a73b645})
