object host.create(object/array hosts)
Este método permite crear nuevos equipos.
Este método solo está disponible para los tipos de usuario Administrador y Superadministrador. Los permisos para llamar al método se pueden revocar en la configuración del rol de usuario. Ver Roles de usuario para más información.
(objeto/matriz) Equipos a crear.
Además de las propiedades estándar del equipo, el método acepta los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| groups (obligatorio) |
objeto/matriz | Grupos de equipos al que agregar el equipo. Los grupos de equipos deben tener la propiedad groupid definida. |
| interfaces | objeto/matriz | Interfaces que se crearán para el equipo. |
| tags | objeto/matriz | Host etiquetas. |
| templates | objeto/matriz | Plantillas que se vincularán al equipo. Las plantillas deben tener definida la propiedad templateid. |
| macros | objeto/matriz | Macros de usuario que se crearán para el equipo. |
| inventory | objeto | Propiedades de inventario del equipo. |
(objeto) Devuelve un objeto que contiene los ID de los equipos creados bajo la propiedad hostids. El orden de los ID devueltos coincide con el orden de los equipos pasados.
Cree un equipo llamado "Linux server" con una interfaz IP y etiquetas, agreguelo a un grupo, vincule una plantilla y configure las direcciones MAC en el inventario del equipo.
Solicitud:
{
"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
}Respuesta:
Cree un equipo llamado "SNMP host" con una interfaz SNMPv3 con detalles.
Solicitud:
{
"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
}Respuesta:
Cree un equipo llamado "host PSK" con el cifrado PSK configurado. Tenga en cuenta que el equipo debe estar preconfigurado para usar PSK.
Solicitud:
{
"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
}Respuesta:
CHost::create() en ui/include/classes/api/services/CHost.php.