hostprototype.create

Description

object hostprototype.create(object/array hostPrototypes)

Cette méthode permet de créer de nouveaux prototypes d'hôtes.

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 pour plus d'informations.

Paramètres

(object/array) Prototypes d'hôte à créer.

En plus des propriétés de l'objet prototype d'hôte standard, la méthode accepte les paramètres suivants.

Paramètre Type Description
groupLinks
(obligatoire)
array Liens de groupe à créer pour le prototype d'hôte.
ruleid
(obligatoire)
string ID de la règle de découverte bas niveau à laquelle appartient le prototype d'hôte.
groupPrototypes array [Prototypes de groupe(/manual/api/reference/hostprototype/object#group_prototype) devant être créés pour le prototype d'hôte.
macros object/array Macros utilisateurs à créer pour le prototype d'hôte.
tags object/array Tags de prototype d'hôte.
interfaces object/array Interfaces personnalisée de prototype d'hôte.
templates object/array Modèles à lier au prototype d'hôte.

Les modèles doivent avoir la propriété templateid définie.

Valeurs retournées

(object) Renvoie un objet contenant les IDs des prototypes d'hôtes créés sous la propriété hostids. L'ordre des ID renvoyés correspond à l'ordre des prototypes d'hôtes transmis.

Exemples

Création d'un prototype d'hôte

Créez un prototype d'hôte "{#VM.NAME}" sur la règle LLD "23542" avec un prototype de groupe "{#HV.NAME}", une paire de tag "Datacenter": "#DATACENTER.NAME}" et une interface SNMPv2 personnalisée 127.0.0.1:161 avec la communauté {$SNMP_COMMUNITY}. Liez-le au groupe d'hôtes "2".

Requête :

{
           "jsonrpc": "2.0",
           "method": "hostprototype.create",
           "params": {
               "host": "{#VM.NAME}",
               "ruleid": "23542",
               "custom_interfaces": "1",
               "groupLinks": [
                   {
                       "groupid": "2"
                   }
               ],
               "groupPrototypes": [
                   {
                       "name": "{#HV.NAME}"
                   }
               ],
               "tags": [
                   {
                       "tag": "Datacenter",
                       "value": "{#DATACENTER.NAME}"
                   }
               ],
               "interfaces": [
                   {
                       "main": "1",
                       "type": "2",
                       "useip": "1",
                       "ip": "127.0.0.1",
                       "dns": "",
                       "port": "161",
                       "details": {
                           "version": "2",
                           "bulk": "1",
                           "community": "{$SNMP_COMMUNITY}"
                       }
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Réponse :

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10103"
               ]
           },
           "id": 1
       }

Voir également

Source

CHostPrototype::create() dans ui/include/classes/api/services/CHostPrototype.php.