hostprototype.create
Descripción
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.
Parámetros
(object/array) Prototipos de host a crear.
Además de las propiedades estándar del prototipo de host, el método acepta los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| groupLinks | array | Vínculos de grupo que se crearán para el prototipo de host. Comportamiento del parámetro: - obligatorio |
| ruleid | ID | ID de la regla LLD a la que pertenece el prototipo de host. Comportamiento del parámetro: - obligatorio |
| groupPrototypes | array | Prototipos de grupo que se crearán para el prototipo de host. |
| macros | object/array | Macros de usuario que se crearán para el prototipo de host. |
| tags | object/array | Etiquetas de prototipo de host. |
| interfaces | object/array | Interfaces personalizadas del prototipo de host. |
| templates | object/array | Templates que se vincularán al prototipo de host. Los templates deben tener definida únicamente la propiedad templateid. |
Valores devueltos
(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.
Ejemplos
Creación de un prototipo de equipo
Cree un prototipo de equipo "{#VM.NAME}" en la regla LLD "23542" con un prototipo de grupo "{#HV.NAME}", par de etiquetas "datacenter": "{#DATACENTER.NAME}" y una interfaz SNMPv2 personalizada 127.0.0.1:161 con la comunidad {$SNMP_COMMUNITY}. Vincúlelo al grupo de equipos "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:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10103"
]
},
"id": 1
}
Ver también
- Vínculo de grupo
- Prototipo de grupo
- Etiqueta de prototipo de host
- Interfaz personalizada
- Macro de usuario
Fuente
CHostPrototype::create() en ui/include/classes/api/services/CHostPrototype.php.