object host.create(object/array hosts)
Cette méthode permet de créer de nouveaux hôtes.
(object/array) Hôtes à créer.
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 (obligatoire) | object/array | Groupes d'hôtes auxquels ajouter l'hôte. Les groupes hôtes doivent avoir la propriété groupid définie. |
| interfaces (obligatoire) | object/array | Interfaces à créer pour l'hôte. |
| templates | object/array | Modèles à associer à l'hôte. Les modèles doivent avoir la propriété templateid définie. |
| macros | object/array | Macros utilisateur à créer pour l'hôte. |
| inventory | object | Propriétés d'inventaire d'hôte. |
(object) Retourne un objet contenant les identifiants des hôtes créés sous la propriété hostids. L'ordre des ID retournés correspond à l'ordre des hôtes transmis.
Créer un hôte appelé “Linux server” avec une interface IP, l'ajouter à un groupe, lui associer un modèle et définir les adresses MAC dans l'inventaire de l'hôte.
Requête :
{ "jsonrpc": "2.0", "method": "host.create", "params": { "host": "Linux server", "interfaces": [ { "type": 1, "main": 1, "useip": 1, "ip": "192.168.3.1", "dns": "", "port": "10050" } ], "groups": [ { "groupid": "50" } ], "templates": [ { "templateid": "20045" } ], "macros": [ { "macro": "{$USER_ID}", "value": "123321" } ], "inventory_mode": 0, "inventory": { "macaddress_a": "01234", "macaddress_b": "56768" } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Réponse :
{ "jsonrpc": "2.0", "result": { "hostids": [ "107819" ] }, "id": 1 }
CHost::create() dans frontends/php/include/classes/api/services/CHost.php.