zabbix-api 0.9.0

Zabbix API client
Documentation
use serde::{Deserialize, Serialize};
use serde_with::skip_serializing_none;

#[derive(Serialize, Debug, Clone)]
pub struct UserGroupId {
    pub usrgrpid: String,
}

#[skip_serializing_none]
#[derive(Serialize, Debug, Clone, Default)]
pub struct UserMedia {
    pub mediatypeid: String,
    pub sendto: String,
    pub active: i32,
    pub severity: i32,
    pub period: Option<String>,
}

#[skip_serializing_none]
#[derive(Serialize, Debug, Clone, Default)]
pub struct CreateUserRequest {
    pub username: String,
    pub passwd: String,
    pub roleid: String,
    pub usrgrps: Vec<UserGroupId>,

    pub name: Option<String>,
    pub surname: Option<String>,
    pub url: Option<String>,
    pub autologin: Option<i32>,
    pub autologout: Option<String>,
    pub lang: Option<String>,
    pub refresh: Option<String>,
    pub theme: Option<String>,
    #[serde(rename = "type")]
    pub user_type: Option<i32>,
    pub user_medias: Option<Vec<UserMedia>>,
}

#[derive(Deserialize, Debug, Clone)]
pub struct CreateUserResponse {
    #[serde(rename = "userids")]
    pub user_ids: Vec<String>,
}