zabbix_api/trigger/
create.rs

1use serde::{Deserialize, Serialize};
2use serde_with::skip_serializing_none;
3
4use super::model::ZabbixTriggerTag;
5
6#[skip_serializing_none]
7#[derive(Serialize, Debug, Clone)]
8pub struct CreateTriggerRequest {
9    pub description: String,
10    pub expression: String,
11    pub priority: u8,
12    pub recovery_mode: Option<u8>,
13    pub recovery_expression: Option<String>,
14    pub url: Option<String>,
15    pub event_name: Option<String>,
16    pub dependencies: Vec<ZabbixTriggerDependency>,
17    pub tags: Vec<ZabbixTriggerTag>,
18}
19
20#[derive(Serialize, Debug, Clone)]
21pub struct ZabbixTriggerDependency {
22    #[serde(alias = "triggerid")]
23    pub trigger_id: String,
24}
25
26#[derive(Deserialize, Debug, Clone)]
27pub struct CreateTriggerResponse {
28    #[serde(rename = "triggerids")]
29    pub trigger_ids: Vec<String>,
30}