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.
(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. |
(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.
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:
CHostPrototype::create() in ui/include/classes/api/services/CHostPrototype.php.