object host.create(object/array hosts)
Este método permite crear nuevos equipos.
Este método solo está disponible para los tipos de usuario Admin y Super admin. Los permisos para llamar al método pueden ser revocados en la configuración de roles de usuario. Consulte Roles de usuario para obtener más información.
(objeto/array) 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 | objeto/array | Grupos de equipos a los que añadir el equipo. Los grupos de equipos deben tener definida únicamente la propiedad groupid.Comportamiento del parámetro: - obligatorio |
| interfaces | objeto/array | Interfaces que se crearán para el equipo. |
| tags | objeto/array | Etiquetas de equipo. |
| templates | objeto/array | Plantillas que se vincularán al equipo. Las plantillas deben tener definida únicamente la propiedad templateid. |
| macros | objeto/array | Macros de usuario que se crearán para el equipo. |
| inventory | objeto | Propiedades del inventario del equipo. |
(object) Devuelve un objeto que contiene los IDs de los equipos creados bajo la propiedad hostids. El orden de los IDs devueltos coincide con el orden de los equipos enviados.
Cree un equipo llamado "Linux server" con una interfaz IP y etiquetas, agréguelo a un grupo, vincule una plantilla y establezca las direcciones MAC en el inventario del equipo.
{
"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": "coordenadas de latitud, longitud y altitud"
}
],
"inventory_mode": 0,
"inventory": {
"macaddress_a": "01234",
"macaddress_b": "56768"
}
},
"id": 1
}Respuesta:
Cree un equipo llamado "SNMP host" con una interfaz SNMPv3 con detalles.
{
"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"
}
]
},
"id": 1
}Respuesta:
Cree un equipo llamado "PSK host" con cifrado PSK configurado. Tenga en cuenta que el equipo debe estar preconfigurado para usar PSK.
{
"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"
},
"id": 1
}Respuesta:
Cree un equipo que será monitorizado por el proxy con ID "1".
{
"jsonrpc": "2.0",
"method": "host.create",
"params": {
"host": "Equipo monitorizado por proxy",
"groups": [
{
"groupid": "2"
}
],
"monitored_by": 1,
"proxyid": 1
},
"id": 1
}Respuesta:
Cree un equipo que será monitorizado por el grupo de proxies con ID "1".
{
"jsonrpc": "2.0",
"method": "host.create",
"params": {
"host": "Equipo monitorizado por grupo de proxies",
"groups": [
{
"groupid": "2"
}
],
"monitored_by": 2,
"proxy_groupid": 1
},
"id": 1
}Respuesta:
CHost::create() en ui/include/classes/api/services/CHost.php.