object hostprototype.create(object/array hostPrototypes)
Este método permite crear nuevos prototipos de equipo.
Este método solo está disponible para los tipos de usuario Administrador y Superadministrador. Los permisos para llamar al método se pueden revocar en la configuración del rol de usuario. Ver Roles de usuario para más información.
(objeto/matriz)
Prototipos de host para crear.
Además del prototipo de host estándar propiedades, el método acepta lo siguiente parámetros.
Parámetro | Tipo | Descripción |
---|---|---|
groupLinks | array | Enlaces de grupo que se crearán para el prototipo de host. Comportamiento de parámetros: - obligatorio |
ruleid | ID | ID de la regla LLD a la que pertenece el prototipo de host. Comportamiento del parámetro: - requerido |
groupPrototypes | array | Prototipos de grupo que se crearán para el prototipo de host. |
macros | objeto/matriz | macros de usuario que se crearán para el prototipo de host. |
etiquetas | objeto/matriz | Etiquetas de prototipo de host. |
interfaces | objeto/matriz | Prototipo de host interfaces personalizadas. |
plantillas | objeto/matriz | Plantillas que se vincularán al prototipo del host. Las plantillas deben tener definida solo la propiedad templateid . |
(object)
Devuelve un objeto que contiene los ID del host creado prototipos bajo la propiedad hostids
. El orden de las identificaciones devueltas coincide con el orden de los prototipos de host aprobados.
Cree un prototipo de equipo "{#VM.NAME}" en la regla LLD "23542" con un grupo prototipo "{#HV.NAME}", etiquetas "Datacenter": "{#DATACENTER.NAME}" e interfaz SNMPv2 personalizada 127.0.0.1:161 con la comunidad {$SNMP_COMMUNIDAD}. Vincúlelo al grupo de equipo "2".
{
"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}"
}
}
]
},
"id": 1
}
Respuesta:
CHostPrototype::create() en ui/include/classes/api/services/CHostPrototype.php.