object host.update(object/array hosts)
Cette méthode permet de mettre à jour des hôtes existants.
(object/array)
Propriétés de l'hôte à mettre à jour.
La propriété hostid
doit être définie pour chaque hôte, toutes les autres propriétés sont facultatives. Seules les propriétés données seront mises à jour, toutes les autres resteront inchangées.
En plus des propriétés de l'objet hôte standard, la méthode accepte les paramètres suivants.
Paramètre | Type | Description |
---|---|---|
groups | object/array | Groupes d'hôtes en remplacement des groupes d'hôtes actuels auxquels appartient l'hôte. Les groupes hôtes doivent avoir la propriété groupid définie. Tous les groupes hôtes qui ne figurent pas dans la demande seront déliés. |
interfaces | object/array | Interfaces hôtes en remplacement des interfaces hôtes actuelles. Toutes les interfaces qui ne figurent pas dans la demande seront supprimées. |
inventory | object | Propriétés d'inventaire d'hôte. |
macros | object/array | Macros utilisateur en remplacement des macros utilisateur actuelles. Toutes les macros non répertoriées dans la demande seront supprimées. |
templates | object/array | Modèles en remplacement des modèles actuellement liés. Tous les modèles qui ne sont pas répertoriés dans la demande seront uniquement déliés. Les modèles doivent avoir la propriété templateid définie. |
templates_clear | object/array | Modèles à délier et supprimer de l'hôte. Les modèles doivent avoir la propriété templateid définie. |
Contrairement à l'interface Zabbix, lorsque name
(nom d'hôte visible) est identique à host
(nom d'hôte technique), la mise à jour de host
via l'API ne mettra pas automatiquement à jour name
. Les deux propriétés doivent être mises à jour explicitement.
(object)
Retourne un objet contenant les identifiants des hôtes mis à jour sous la propriété hostids
.
Activer la surveillance d’hôte, c’est-à-dire définir son statut à 0.
Requête :
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"status": 0
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Réponse :
Délier et effacer deux modèles de l'hôte.
Requête :
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"templates_clear": [
{
"templateid": "10124"
},
{
"templateid": "10125"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Réponse :
Remplacer toutes les macros hôtes par deux nouvelles.
Requête :
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"macros": [
{
"macro": "{$PASS}",
"value": "password"
},
{
"macro": "{$DISC}",
"value": "sda"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Réponse :
Changer le mode d'inventaire et ajouter l'emplacement
Requête :
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10387",
"inventory_mode": 0,
"inventory": {
"location": "Latvia, Riga"
}
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Réponse :
CHost::update() dans frontends/php/include/classes/api/services/CHost.php.