hostprototype.update
Descripción
object hostprototype.update(object/array hostPrototypes)
Este método permite actualizar prototipos de equipos existentes.
Este método solo está disponible para los tipos de usuario Admin y Super admin. Los permisos para llamar al método pueden ser revocados en la configuración del rol de usuario. Consulte Roles de usuario para obtener más información.
Parámetros
(object/array) Propiedades de la plantilla de host a actualizar.
La propiedad hostid debe estar definida para cada plantilla de host, todas las demás propiedades son opcionales. Sólo se actualizarán las propiedades pasadas, todas las demás permanecerán sin cambios.
Además de las propiedades estándar de la plantilla de host, el método acepta los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| groupLinks | array | Enlaces de grupo para reemplazar los enlaces de grupo actuales en la plantilla de host. Comportamiento del parámetro: - sólo lectura para objetos heredados |
| groupPrototypes | array | Plantillas de grupo para reemplazar las plantillas de grupo existentes en la plantilla de host. Todas las plantillas de grupo que no estén listadas en la solicitud serán eliminadas. Comportamiento del parámetro: - sólo lectura para objetos heredados |
| macros | object/array | Macros de usuario para reemplazar las macros de usuario actuales. Todas las macros que no estén listadas en la solicitud serán eliminadas. |
| tags | object/array | Etiquetas de la plantilla de host para reemplazar las etiquetas actuales. Todas las etiquetas que no estén listadas en la solicitud serán eliminadas. Comportamiento del parámetro: - sólo lectura para objetos heredados |
| interfaces | object/array | Interfaces personalizadas de la plantilla de host para reemplazar las interfaces actuales. El objeto de interfaz personalizada debe contener todos sus parámetros. Todas las interfaces que no estén listadas en la solicitud serán eliminadas. Comportamiento del parámetro: - soportado si custom_interfaces del objeto plantilla de host está configurado como "usar interfaces personalizadas de plantillas de host"- sólo lectura para objetos heredados |
| templates | object/array | Templates para reemplazar las plantillas actualmente enlazadas. Las plantillas deben tener sólo la propiedad templateid definida. |
Valores de retorno
(object) Devuelve un objeto que contiene los IDs de los prototipos de equipo actualizados bajo la propiedad hostids.
Ejemplos
Deshabilitar un prototipo de equipo
Deshabilite un prototipo de equipo, es decir, establezca su estado en "1".
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"status": 1
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10092"
]
},
"id": 1
}
Actualización de etiquetas de prototipo de equipo
Reemplazar las etiquetas del prototipo de equipo por nuevas.
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"tags": [
{
"tag": "datacenter",
"value": "{#DATACENTER.NAME}"
},
{
"tag": "instance-type",
"value": "{#INSTANCE_TYPE}"
}
]
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10092"
]
},
"id": 1
}
Actualización de interfaces personalizadas de prototipos de equipo
Reemplazar las interfaces heredadas por interfaces personalizadas de prototipos de equipo.
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"custom_interfaces": "1",
"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": [
"10092"
]
},
"id": 1
}
Ver también
- Enlace de grupo
- Prototipo de grupo
- Etiqueta de prototipo de host
- Interfaz personalizada
- Macro de usuario
Fuente
CHostPrototype::update() en ui/include/classes/api/services/CHostPrototype.php.