Skip to main content

authentik_client/models/
patched_lifecycle_rule_request.rs

1/*
2 * authentik
3 *
4 * Making authentication simple.
5 *
6 * The version of the OpenAPI document: 2026.2.0
7 * Contact: hello@goauthentik.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// PatchedLifecycleRuleRequest : Mixin to validate that a valid enterprise license exists before allowing to save the object
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct PatchedLifecycleRuleRequest {
17    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
18    pub name: Option<String>,
19    #[serde(rename = "content_type", skip_serializing_if = "Option::is_none")]
20    pub content_type: Option<models::ContentTypeEnum>,
21    #[serde(
22        rename = "object_id",
23        default,
24        with = "::serde_with::rust::double_option",
25        skip_serializing_if = "Option::is_none"
26    )]
27    pub object_id: Option<Option<String>>,
28    #[serde(rename = "interval", skip_serializing_if = "Option::is_none")]
29    pub interval: Option<String>,
30    #[serde(rename = "grace_period", skip_serializing_if = "Option::is_none")]
31    pub grace_period: Option<String>,
32    #[serde(rename = "reviewer_groups", skip_serializing_if = "Option::is_none")]
33    pub reviewer_groups: Option<Vec<uuid::Uuid>>,
34    #[serde(rename = "min_reviewers", skip_serializing_if = "Option::is_none")]
35    pub min_reviewers: Option<u16>,
36    #[serde(rename = "min_reviewers_is_per_group", skip_serializing_if = "Option::is_none")]
37    pub min_reviewers_is_per_group: Option<bool>,
38    #[serde(rename = "reviewers", skip_serializing_if = "Option::is_none")]
39    pub reviewers: Option<Vec<uuid::Uuid>>,
40    /// Select which transports should be used to notify the reviewers. If none are selected, the notification will only be shown in the authentik UI.
41    #[serde(rename = "notification_transports", skip_serializing_if = "Option::is_none")]
42    pub notification_transports: Option<Vec<uuid::Uuid>>,
43}
44
45impl PatchedLifecycleRuleRequest {
46    /// Mixin to validate that a valid enterprise license exists before allowing to save the object
47    pub fn new() -> PatchedLifecycleRuleRequest {
48        PatchedLifecycleRuleRequest {
49            name: None,
50            content_type: None,
51            object_id: None,
52            interval: None,
53            grace_period: None,
54            reviewer_groups: None,
55            min_reviewers: None,
56            min_reviewers_is_per_group: None,
57            reviewers: None,
58            notification_transports: None,
59        }
60    }
61}