object host.create(object/array hosts)
Met deze methode kunnen nieuwe hosts worden gemaakt.
Deze methode is alleen beschikbaar voor Admin en Super admin gebruikers typen. Machtigingen om de methode aan te roepen kunnen worden ingetrokken in de gebruikersrol instellingen. Zie Gebruiker rollen voor meer informatie.
(object/array)
Hosts om aan te maken.
Naast de standaard hosteigenschappen, is de methode accepteert de volgende parameters.
Parameter | Type | Beschrijving |
---|---|---|
groepen (vereist) |
object/array | Host groepen om de host aan toe te voegen. De hostgroepen moeten de eigenschap groupid gedefinieerd. |
interfaces | object/array | Interfaces die moet worden gemaakt voor de host. |
tags | object/array | Host tags. |
templates | object/array | Templates om aan de host te worden gekoppeld. Voor de sjablonen moet de eigenschap templateid zijn gedefinieerd. |
macros | object/array | Gebruikersmacro's die moeten worden gemaakt voor de host. |
inventaris | object | Host inventaris eigenschappen. |
(object)
Retourneert een object dat de ID's van de gemaakte hosts bevat onder de eigenschap hostids
. De volgorde van de geretourneerde ID's komt overeen met de volgorde van de doorgegeven gastheren.
Maak een host met de naam "Linux-server" met een IP-interface en tags, voeg toe het aan een groep, koppel er een sjabloon aan en stel de MAC-adressen in de gastheer inventaris.
Verzoek:
{
"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"
}
],
"tags": [
{
"tag": "Host name",
"value": "Linux server"
}
],
"templates": [
{
"templateid": "20045"
}
],
"macros": [
{
"macro": "{$USER_ID}",
"value": "123321"
},
{
"macro": "{$USER_LOCATION}",
"value": "0:0:0",
"description": "latitude, longitude and altitude coordinates"
}
],
"inventory_mode": 0,
"inventory": {
"macaddress_a": "01234",
"macaddress_b": "56768"
}
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Antwoord:
Maak een host met de naam "SNMP-host" met een SNMPv3-interface met details.
Verzoek:
{
"jsonrpc": "2.0",
"method": "host.create",
"params": {
"host": "SNMP host",
"interfaces": [
{
"type": 2,
"main": 1,
"useip": 1,
"ip": "127.0.0.1",
"dns": "",
"port": "161",
"details": {
"version": 3,
"bulk": 0,
"securityname": "mysecurityname",
"contextname": "",
"securitylevel": 1
}
}
],
"groups": [
{
"groupid": "4"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Antwoord:
Maak een host genaamd "PSK-host" aan met geconfigureerde PSK-encryptie. Merk op dat de host vooraf geconfigureerd moet zijn om PSK te gebruiken.
Aanvraag:
{
"jsonrpc": "2.0",
"method": "host.create",
"params": {
"host": "PSK host",
"interfaces": [
{
"type": 1,
"ip": "192.168.3.1",
"dns": "",
"port": "10050",
"useip": 1,
"main": 1
}
],
"groups": [
{
"groupid": "2"
}
],
"tls_accept": 2,
"tls_connect": 2,
"tls_psk_identity": "PSK 001",
"tls_psk": "1f87b595725ac58dd977beef14b97461a7c1045b9a1c963065002c5473194952"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Antwoord:
CHost::create() in ui/include/classes/api/services/CHost.php.