hostprototype.create

Descripció

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.

Paràmetres

(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.

Valors de retorn

(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.

Exemples

Crear un prototip d'equip

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:

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

Veieu també

Font

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