brevo/models/
get_email_event_report_events_inner.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct GetEmailEventReportEventsInner {
16 #[serde(rename = "email")]
18 pub email: String,
19 #[serde(rename = "date")]
21 pub date: String,
22 #[serde(rename = "subject", skip_serializing_if = "Option::is_none")]
24 pub subject: Option<String>,
25 #[serde(rename = "messageId")]
27 pub message_id: String,
28 #[serde(rename = "event")]
30 pub event: Event,
31 #[serde(rename = "reason", skip_serializing_if = "Option::is_none")]
33 pub reason: Option<String>,
34 #[serde(rename = "tag", skip_serializing_if = "Option::is_none")]
36 pub tag: Option<String>,
37 #[serde(rename = "ip", skip_serializing_if = "Option::is_none")]
39 pub ip: Option<String>,
40 #[serde(rename = "link", skip_serializing_if = "Option::is_none")]
42 pub link: Option<String>,
43 #[serde(rename = "from", skip_serializing_if = "Option::is_none")]
45 pub from: Option<String>,
46 #[serde(rename = "templateId", skip_serializing_if = "Option::is_none")]
48 pub template_id: Option<i64>,
49}
50
51impl GetEmailEventReportEventsInner {
52 pub fn new(
53 email: String,
54 date: String,
55 message_id: String,
56 event: Event,
57 ) -> GetEmailEventReportEventsInner {
58 GetEmailEventReportEventsInner {
59 email,
60 date,
61 subject: None,
62 message_id,
63 event,
64 reason: None,
65 tag: None,
66 ip: None,
67 link: None,
68 from: None,
69 template_id: None,
70 }
71 }
72}
73#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
75pub enum Event {
76 #[serde(rename = "bounces")]
77 Bounces,
78 #[serde(rename = "hardBounces")]
79 HardBounces,
80 #[serde(rename = "softBounces")]
81 SoftBounces,
82 #[serde(rename = "delivered")]
83 Delivered,
84 #[serde(rename = "spam")]
85 Spam,
86 #[serde(rename = "requests")]
87 Requests,
88 #[serde(rename = "opened")]
89 Opened,
90 #[serde(rename = "clicks")]
91 Clicks,
92 #[serde(rename = "invalid")]
93 Invalid,
94 #[serde(rename = "deferred")]
95 Deferred,
96 #[serde(rename = "blocked")]
97 Blocked,
98 #[serde(rename = "unsubscribed")]
99 Unsubscribed,
100 #[serde(rename = "error")]
101 Error,
102 #[serde(rename = "loadedByProxy")]
103 LoadedByProxy,
104}
105
106impl Default for Event {
107 fn default() -> Event {
108 Self::Bounces
109 }
110}