object hostprototype.create(object/array hostPrototypes)
Aquest mètode permet crear nous prototips d'equips.
Tenim aquest mètode disponible només per als usuaris Admin i Super admin. Els permisos per cridar el mètode es poden revocar a la configuració dels rols d'usuari. Per a més informació, veieu Rols d'usuari.
(object/array)
Prototipus d'equips a crear.
A més de les [propietats d'objecte de prototip d'equip estàndard] (object#host_prototype), el mètode admet els paràmetres següents.
Paràmetre | Tipus | Descripció |
---|---|---|
groupLinks (obligatori) |
array | Enllaç de grups per crear per al prototip d'equip. |
ruleid (obligatori) |
string | ID de la regla de descobriment de baix nivell a la qual pertany el prototip d'equip. |
groupPrototypes | array | Grup de protips que s'han de crear per al prototip d'equip. |
macros | object/array | Macros d'usuari per crear per al prototip d'equip. |
tags | object/array | Etiquetes de prototip d'equip. |
interfaces | object/array | Interfícies personalitzades del prototip d'equip. |
templates | object/array | Plantilles per vincular al prototip d'equip. Les plantilles han de tindre la propietat templateid establerta. |
(object)
Retorna un objecte amb els IDs dels prototips d'equips creats segons la propietat hostids
. L'ordre dels IDs retornats correspon a l'ordre dels prototips d'equips donats.
Crear un prototip d'equip "{#VM.NAME}" sobre la regla LLD "23542" amb un prototip de grup "{#HV.NAME}", un parell d'etiquetes "Datacenter": "{#DATACENTER.NAME}" i una interfície SNMPv2 personalitzada 127.0.0.1:161 amb la comunitat {$SNMP_COMMUNITY}. Enllaçar-lo al grup d'equips "2".
Petició:
{
"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
}
Resposta:
CHostPrototype::create() in ui/include/classes/api/services/CHostPrototype.php.