[comment]: # translation:outdated

[comment]: # ({450c25c2-450c25c2})
# itemprototype.create

[comment]: # ({/450c25c2-450c25c2})

[comment]: # ({079430aa-74ae8b8a})
### Description

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

Cette méthode permet de créer de nouveaux prototypes d'éléments.

[comment]: # ({/079430aa-74ae8b8a})

[comment]: # ({e58c12e2-af502f9d})
### Paramètres

`(object/array)` Prototype d'élément à créer.

En plus des [propriétés de l'objet prototype d'élément
standard](/fr/manual/api/reference/itemprototype/object#prototype_d_element),
la méthode accepte les paramètres suivants.

|Paramètre|Type|Description|
|----------|----|-----------|
|**ruleid**<br>(obligatoire)|string|ID de la règle de découverte bas niveau à laquelle l'élément appartient.|
|applications|array|ID des applications à affecter aux éléments découverts.|
|applicationPrototypes|array|Noms des prototypes d'application à affecter au prototype d'élément.|
|preprocessing|array|Options de pré-traitement du prototype d'élément.|

[comment]: # ({/e58c12e2-af502f9d})

[comment]: # ({33810d96-4682a6ee})
### Valeurs retournées

`(object)` Retourne un objet contenant les identifiants des prototypes
d'élément créés sous la propriété `itemids`. L'ordre des ID retournés
correspond à l'ordre des prototypes d'élément transmis.

[comment]: # ({/33810d96-4682a6ee})

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

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

[comment]: # ({fad93262-9956fee4})
#### Création d'un prototype d'élément

Créer un prototype d'élément pour surveiller l'espace disque disponible
sur un système de fichiers découvert. Les éléments découverts doivent
être des éléments numériques de l'agent Zabbix mis à jour toutes les 30
secondes.

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "itemprototype.create",
    "params": {
        "name": "Free disk space on $1",
        "key_": "vfs.fs.size[{#FSNAME},free]",
        "hostid": "10197",
        "ruleid": "27665",
        "type": 0,
        "value_type": 3,
        "interfaceid": "112",
        "delay": "30s"
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Réponse :

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

[comment]: # ({/fad93262-9956fee4})

[comment]: # ({6bd87cb3-e3d55ca4})
#### Création d'un prototype d'élément avec pré-traitement

Créer un élément en utilisant une modification par seconde et un
multiplicateur personnalisé dans un deuxième temps.

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "itemprototype.create",
    "params": {
        "name": "Incoming network traffic on $1",
        "key_": "net.if.in[{#IFNAME}]",
        "hostid": "10001",
        "ruleid": "27665",
        "type": 0,
        "value_type": 3,
        "delay": "60s",
        "units": "bps",
        "interfaceid": "1155",
        "preprocessing": [
            {
                "type": "10",
                "params": ""
            },
            {
                "type": "1",
                "params": "8"
            }
        ]
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Réponse :

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

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

[comment]: # ({c4026b45-76dad6d6})
#### Création d'un prototype d'élément dépendant

Créer un prototype d'élément dépendant pour le prototype d'élément
maître portant l'ID 44211. 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îtres et dépendants doivent avoir les mêmes hostid et ruleid.

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "itemprototype.create",
    "params": {
      "hostid": "10001",
      "ruleid": "27665",
      "name": "Dependent test item prototype",
      "key_": "dependent.prototype",
      "type": "18",
      "master_itemid": "44211",
      "value_type": "3"
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Réponse :

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

[comment]: # ({/c4026b45-76dad6d6})

[comment]: # ({d911d01d-94e7709f})
#### Créer un prototype d'élément d'agent HTTP

Créer un prototype d'élément avec une URL à l'aide d'une macro
utilisateur, d'un champ de requête et d'en-têtes personnalisés.

Requête :

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "itemprototype.create",
    "params": {
        "type": "19",
        "hostid": "10254",
        "ruleid":"28256",
        "interfaceid":"2",
        "name": "api item prototype example",
        "key_": "api_http_item",
        "value_type": "3",
        "url": "{$URL_PROTOTYPE}",
        "query_fields": [
            {
                "min": "10"
            },
            {
                "max": "100"
            }
        ],
        "headers": {
            "X-Source": "api"
        },
        "delay":"35"
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Réponse :

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

[comment]: # ({/d911d01d-94e7709f})

[comment]: # ({af50d83d-7e17a762})
### Source

CItemPrototype::create() dans
*frontends/php/include/classes/api/services/CItemPrototype.php*.

[comment]: # ({/af50d83d-7e17a762})
