[comment]: # translation:outdated

[comment]: # ({cc00d3db-cc00d3db})
# itemprototype.update

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

[comment]: # ({19136706-63442cbb})
### Description

`object itemprototype.update(object/array itemPrototypes)`

Cette méthode permet de mettre à jour les prototypes d'éléments existants.

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

[comment]: # ({/19136706-63442cbb})

[comment]: # ({4aded076-16fcb884})
### Paramètres

`(object/array)` Propriétés du prototype d'élément à mettre à jour.

La propriété `itemid` doit être définie pour chaque prototype d'élément, 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és de prototype d'élément standard](object#item_prototype), la méthode accepte les éléments suivantsparameters.

|Paramètre|[Type](/manual/api/reference_commentary#data_types)|Description|
|--|--|------|
|preprocessing|array|Options de [prétraitement](/manual/api/reference/itemprototype/object#item_prototype_preprocessing) du prototype d'élément pour remplacer les options de prétraitement actuelles.|
|tags|array|[Tags](/manual/api/reference/itemprototype/object#item_prototype_tag) de prototype d'élément.|

[comment]: # ({/4aded076-16fcb884})

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

`(object)` Retourne un objet contenant les identifiants des prototypes d'élément mis à jour sous la propriété `itemids`.

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

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

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

[comment]: # ({abad33e9-48cea947})
#### Modification de l'interface d'un prototype d'élément

Modifiez l'interface hôte qui sera utilisée par les éléments découverts.

Requête :

```json
{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "itemid": "27428",
        "interfaceid": "132"
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Réponse :

```json
{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "27428"
        ]
    },
    "id": 1
}
```

[comment]: # ({/abad33e9-48cea947})

[comment]: # ({328ec87c-e1d8fc73})
#### Mettre à jour le prototype de l'élément dépendant

Mettez à jour le prototype d'élément dépendant avec le nouvel ID de prototype d'élément principal. Seules les dépendances sur le même hôte (modèle/règle de découverte) sont autorisées. Par conséquent, les éléments maître et dépendant doivent avoir les mêmes hostid et ruleid.

Requête :

```json
{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "master_itemid": "25570",
        "itemid": "189030"
    },
    "auth": "700ca65537074ec963db7efabda78259",
    "id": 1
}
```

Réponse :

```json
{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "189030"
        ]
    },
    "id": 1
}
```

[comment]: # ({/328ec87c-e1d8fc73})

[comment]: # ({1bd02ab5-d7fe7206})
#### Mettre à jour le prototype d'élément d'agent HTTP

Modifiez les champs de requête et supprimez toutes les en-têtes personnalisées.

Requête :

```json
{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "itemid":"28305",
        "query_fields": [
            {
                "random": "qwertyuiopasdfghjklzxcvbnm"
            }
        ],
        "headers": []
    }
    "auth": "700ca65537074ec963db7efabda78259",
    "id": 1
}
```

Réponse :

```json
{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "28305"
        ]
    },
    "id": 1
}
```

[comment]: # ({/1bd02ab5-d7fe7206})

[comment]: # ({871edb8e-e5fc44e0})
#### Mise à jour des options de prétraitement des éléments

Mettez à jour un prototype d'élément avec la règle de prétraitement d'élément "Multiplicateur personnalisé".

Requête :

```json
{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "itemid": "44211",
        "preprocessing": [
            {
                "type": 1,
                "params": "4",
                "error_handler": 2,
                "error_handler_params": "5"
            }
        ]
    },
    "auth": "700ca65537074ec963db7efabda78259",
    "id": 1
}
```

Réponse :

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

[comment]: # ({/871edb8e-e5fc44e0})

[comment]: # ({66d2393b-15ba4525})
#### Mise à jour d'un prototype d'élément de script

Mettez à jour un prototype d'élément de script avec un script différent et supprimez les paramètres inutiles qui ont été utilisés par le script précédent.

Requête :

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

Réponse :

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

[comment]: # ({/66d2393b-15ba4525})

[comment]: # ({bc6956c2-bc6956c2})
### Source

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

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