hostprototype.update

Descrizione

object hostprototype.update(object/array hostPrototypes)

Questo metodo consente di aggiornare i prototipi di host esistenti.

Questo metodo è disponibile solo per i tipi di utente Admin e Super admin. I permessi per chiamare il metodo possono essere revocati nelle impostazioni del ruolo utente. Per ulteriori informazioni, vedere Ruoli utente.

Parametri

(object/array) Proprietà del prototipo di host da aggiornare.

La proprietà hostid deve essere definita per ciascun prototipo di host, tutte le altre proprietà sono facoltative. Verranno aggiornate solo le proprietà passate, tutte le altre rimarranno invariate.

Oltre alle proprietà standard del prototipo di host, il metodo accetta i seguenti parametri.

Parametro Tipo Descrizione
groupLinks array Collegamenti ai gruppi per sostituire i collegamenti ai gruppi correnti nel prototipo di host.

Comportamento del parametro:
- sola lettura per gli oggetti ereditati
groupPrototypes array Prototipi di gruppo per sostituire i prototipi di gruppo esistenti nel prototipo di host.

Tutti i prototipi di gruppo non elencati nella richiesta verranno rimossi.

Comportamento del parametro:
- sola lettura per gli oggetti ereditati
macros object/array Macro utente per sostituire le macro utente correnti.
Tutte le macro non elencate nella richiesta verranno rimosse.
tags object/array Tag del prototipo di host per sostituire i tag correnti.
Tutti i tag non elencati nella richiesta verranno rimossi.

Comportamento del parametro:
- sola lettura per gli oggetti ereditati
interfaces object/array Interfacce personalizzate del prototipo di host per sostituire le interfacce correnti.
L'oggetto interfaccia personalizzata deve contenere tutti i suoi parametri.
Tutte le interfacce non elencate nella richiesta verranno rimosse.

Comportamento del parametro:
- supportato se custom_interfaces di Host prototype object è impostato su "use host prototypes custom interfaces"
- sola lettura per gli oggetti ereditati
templates object/array Template per sostituire i template attualmente collegati.

I template devono avere definita solo la proprietà templateid.

Valori di ritorno

(object) Restituisce un oggetto contenente gli ID dei prototipi host aggiornati sotto la proprietà hostids.

Esempi

Disabilitazione di un prototipo di host

Disabilita un prototipo di host, cioè imposta il suo stato su "1".

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "hostprototype.update",
    "params": {
        "hostid": "10092",
        "status": 1
    },
    "id": 1
}

Risposta:

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

Aggiornamento dei tag del prototipo di host

Sostituisci i tag del prototipo di host con nuovi tag.

Request:

{
    "jsonrpc": "2.0",
    "method": "hostprototype.update",
    "params": {
        "hostid": "10092",
        "tags": [
            {
                "tag": "datacenter",
                "value": "{#DATACENTER.NAME}"
            },
            {
                "tag": "instance-type",
                "value": "{#INSTANCE_TYPE}"
            }
        ]
    },
    "id": 1
}

Risposta:

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

Aggiornamento delle interfacce personalizzate del prototipo di host

Sostituisce le interfacce ereditate con le interfacce personalizzate del prototipo di host.

Richiesta:

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

Risposta:

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

Vedi anche

Fonte

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