hostprototype.create

Beschrijving

object hostprototype.create(object/array hostPrototypes)

Deze methode maakt het mogelijk om nieuwe host-prototypes aan te maken.

Deze methode is alleen beschikbaar voor gebruikers van het type Admin en Super admin. Rechten om de methode aan te roepen kunnen worden ingetrokken in de gebruikersrolinstellingen. Zie Gebruikersrollen voor meer informatie.

Parameters

(object/array) Host-prototypes om aan te maken.

Naast de standaard host-prototype eigenschappen, accepteert de methode ook de volgende parameters.

Parameter Type Beschrijving
groupLinks array Te creëren groep koppelingen voor het host-prototype.

Gedrag van parameter:
- verplicht
ruleid string ID van de LLD-regel waartoe het host-prototype behoort.

Gedrag van parameter:
- verplicht
groupPrototypes array Te creëren groep prototypes voor het host-prototype.
macros object/array Te creëren gebruikersmacro's voor het host-prototype.
tags object/array Tags voor het host-prototype.
interfaces object/array Aangepaste interfaces voor het host-prototype.
templates object/array Te koppelen sjablonen aan het host-prototype.

De sjablonen moeten de eigenschap templateid gedefinieerd hebben.

Retourwaarden

(object) Retourneert een object dat de ID's van de gemaakte host bevat prototypes onder de eigenschap hostids. De volgorde van de geretourneerde ID's komt overeen met de volgorde van de doorgegeven host-prototypes.

Voorbeelden

Een host-prototype aanmaken

Maak een host-prototype "{#VM.NAME}" aan op LLD-regel "23542" met een groepsprototype "{#HV.NAME}", tag-paar "Datacenter": "{#DATACENTER.NAME}" en aangepaste SNMPv2-interface 127.0.0.1:161 met community {$SNMP_COMMUNITY}. Koppel het aan hostgroep "2".

Aanvraag:

{
           "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}"
                       }
                   }
               ]
           },
           "id": 1
       }

Reactie:

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

Zie ook

Bron

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