authentik_client/models/
policy_binding_request.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct PolicyBindingRequest {
17 #[serde(
18 rename = "policy",
19 default,
20 with = "::serde_with::rust::double_option",
21 skip_serializing_if = "Option::is_none"
22 )]
23 pub policy: Option<Option<uuid::Uuid>>,
24 #[serde(
25 rename = "group",
26 default,
27 with = "::serde_with::rust::double_option",
28 skip_serializing_if = "Option::is_none"
29 )]
30 pub group: Option<Option<uuid::Uuid>>,
31 #[serde(
32 rename = "user",
33 default,
34 with = "::serde_with::rust::double_option",
35 skip_serializing_if = "Option::is_none"
36 )]
37 pub user: Option<Option<i32>>,
38 #[serde(rename = "target")]
39 pub target: uuid::Uuid,
40 #[serde(rename = "negate", skip_serializing_if = "Option::is_none")]
42 pub negate: Option<bool>,
43 #[serde(rename = "enabled", skip_serializing_if = "Option::is_none")]
44 pub enabled: Option<bool>,
45 #[serde(rename = "order")]
46 pub order: i32,
47 #[serde(rename = "timeout", skip_serializing_if = "Option::is_none")]
49 pub timeout: Option<u32>,
50 #[serde(rename = "failure_result", skip_serializing_if = "Option::is_none")]
52 pub failure_result: Option<bool>,
53}
54
55impl PolicyBindingRequest {
56 pub fn new(target: uuid::Uuid, order: i32) -> PolicyBindingRequest {
58 PolicyBindingRequest {
59 policy: None,
60 group: None,
61 user: None,
62 target,
63 negate: None,
64 enabled: None,
65 order,
66 timeout: None,
67 failure_result: None,
68 }
69 }
70}