zabbix_api/host/
create.rs1use std::collections::HashMap;
2
3use serde::{Deserialize, Serialize};
4
5use crate::host::{ZabbixHostGroup, ZabbixHostInterface, ZabbixHostTag};
6use crate::r#macro::ZabbixHostMacro;
7use crate::template::ZabbixTemplate;
8
9#[derive(Serialize,Debug)]
11pub struct CreateHostGroupRequest {
12 pub name: String
13}
14
15#[derive(Deserialize,Debug)]
16pub struct CreateHostGroupResponse {
17 #[serde(rename = "groupids")]
18 pub group_ids: Vec<String>
19}
20
21#[derive(Serialize,Debug)]
23pub struct CreateHostRequest {
24 pub host: String,
25 pub groups: Vec<ZabbixHostGroup>,
26 pub interfaces: Vec<ZabbixHostInterface>,
27 pub tags: Vec<ZabbixHostTag>,
28 pub templates: Vec<ZabbixTemplate>,
29 pub macros: Vec<ZabbixHostMacro>,
30 pub inventory_mode: u8,
31 pub inventory: HashMap<String, String>
32}
33
34#[derive(Deserialize,Debug)]
35pub struct CreateHostResponse {
36 #[serde(rename = "hostids")]
37 pub host_ids: Vec<String>
38}