hostprototype.create

Beschrijving

object hostprototype.create(object/array hostPrototypes)

Met deze methode kunnen nieuwe host-prototypes worden gemaakt.

Deze methode is alleen beschikbaar voor Admin en Super admin gebruikers typen. Machtigingen om de methode aan te roepen kunnen worden ingetrokken in de gebruikersrol instellingen. Zie Gebruiker rollen voor meer informatie.

Parameters

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

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

Parameter Type Beschrijving
groupLinks
(vereist)
array Groep links die moet worden gemaakt voor het hostprototype.
regel
(vereist)
string ID van de LLD-regel waartoe het hostprototype behoort.
groupPrototypes array Groep prototypes die moet worden gemaakt voor het host-prototype.
macros object/array Gebruikersmacro's die moeten worden gemaakt voor het host-prototype.
tags object/array Host-prototype tags.
interfaces object/array Host-prototype aangepaste interfaces.
templates object/array Templates moeten worden gekoppeld aan het hostprototype.

Voor de sjablonen moet de eigenschap templateid zijn gedefinieerd.

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 maken

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

Verzoek:

{
           "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
       }

Antwoord:

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

Zie ook

Bron

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