Skip to main content

authentik_client/models/
notification.rs

1/*
2 * authentik
3 *
4 * Making authentication simple.
5 *
6 * The version of the OpenAPI document: 2026.2.1
7 * Contact: hello@goauthentik.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// Notification : Notification Serializer
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct Notification {
17    #[serde(rename = "pk")]
18    pub pk: uuid::Uuid,
19    #[serde(rename = "severity")]
20    pub severity: models::SeverityEnum,
21    #[serde(rename = "body")]
22    pub body: String,
23    #[serde(
24        rename = "hyperlink",
25        default,
26        with = "::serde_with::rust::double_option",
27        skip_serializing_if = "Option::is_none"
28    )]
29    pub hyperlink: Option<Option<String>>,
30    #[serde(
31        rename = "hyperlink_label",
32        default,
33        with = "::serde_with::rust::double_option",
34        skip_serializing_if = "Option::is_none"
35    )]
36    pub hyperlink_label: Option<Option<String>>,
37    #[serde(rename = "created")]
38    pub created: String,
39    #[serde(rename = "event", skip_serializing_if = "Option::is_none")]
40    pub event: Option<models::Event>,
41    #[serde(rename = "seen", skip_serializing_if = "Option::is_none")]
42    pub seen: Option<bool>,
43}
44
45impl Notification {
46    /// Notification Serializer
47    pub fn new(pk: uuid::Uuid, severity: models::SeverityEnum, body: String, created: String) -> Notification {
48        Notification {
49            pk,
50            severity,
51            body,
52            hyperlink: None,
53            hyperlink_label: None,
54            created,
55            event: None,
56            seen: None,
57        }
58    }
59}