prototipodehost.crear

Descripción

object hostprototype.create(object/array hostPrototypes)

Este método permite crear nuevos prototipos de host.

Este método solo está disponible para los tipos de usuarios Administrador y Superadministrador. Los permisos para activar el método se pueden revocar en ajustes de rol de usuario. Ver User roles para más información.

Parámetros

(object/array) Prototipos de host que serán creados.

Además del standard host prototype properties, el método acepta los siguientes parámetros.

Parámetro Tipo Descripción
groupLinks
(obligatorio)
matriz Grupo links que se creará para el prototipo de host.
ruleid
(obligatorio)
cadena ID de la regla LLD a la que pertenece el prototipo de host.
groupPrototypes matriz Grupo prototypes que se creará para el prototipo de host.
macros objeto/matriz User macros que se crearán para el prototipo de host.
etiquetas objeto/matriz Prototipo de host [tags.
interfaces objeto/matriz Prototipo de host custom interfaces.
templates objeto/matriz Templates que se vincularán al prototipo del host.

Las templates deben tener definida la propiedad templateid.

Valores devueltos

(object) Devuelve un objeto que contiene los ID de prototipos de host creados bajo la propiedad hostids. El orden de las identificaciones devueltas coincide con el orden de los prototipos de host aprobados.

Ejemplos

Creando un prototipo de host

Crear un prototipo de host "{#VM.NAME}" en LLD regla "23542" con el prototipo de grupo "{#HV.NAME}", par de etiqueta "Datacenter": "{#DATACENTER.NAME}" y personalizar SNMPv2 interface 127.0.0.1:161 con comunidad {$SNMP_COMMUNITY}. Conéctelo al grupo de host "2".

Solicitud:

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

Respuesta:

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

Ver también

Fuente

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