authentik_rust/models/
o_auth2_provider.rs1use crate::models;
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct OAuth2Provider {
16 #[serde(rename = "pk")]
17 pub pk: i32,
18 #[serde(rename = "name")]
19 pub name: String,
20 #[serde(rename = "authentication_flow", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
22 pub authentication_flow: Option<Option<uuid::Uuid>>,
23 #[serde(rename = "authorization_flow")]
25 pub authorization_flow: uuid::Uuid,
26 #[serde(rename = "property_mappings", skip_serializing_if = "Option::is_none")]
27 pub property_mappings: Option<Vec<uuid::Uuid>>,
28 #[serde(rename = "component")]
30 pub component: String,
31 #[serde(rename = "assigned_application_slug")]
33 pub assigned_application_slug: String,
34 #[serde(rename = "assigned_application_name")]
36 pub assigned_application_name: String,
37 #[serde(rename = "assigned_backchannel_application_slug")]
39 pub assigned_backchannel_application_slug: String,
40 #[serde(rename = "assigned_backchannel_application_name")]
42 pub assigned_backchannel_application_name: String,
43 #[serde(rename = "verbose_name")]
45 pub verbose_name: String,
46 #[serde(rename = "verbose_name_plural")]
48 pub verbose_name_plural: String,
49 #[serde(rename = "meta_model_name")]
51 pub meta_model_name: String,
52 #[serde(rename = "client_type", skip_serializing_if = "Option::is_none")]
54 pub client_type: Option<models::ClientTypeEnum>,
55 #[serde(rename = "client_id", skip_serializing_if = "Option::is_none")]
56 pub client_id: Option<String>,
57 #[serde(rename = "client_secret", skip_serializing_if = "Option::is_none")]
58 pub client_secret: Option<String>,
59 #[serde(rename = "access_code_validity", skip_serializing_if = "Option::is_none")]
61 pub access_code_validity: Option<String>,
62 #[serde(rename = "access_token_validity", skip_serializing_if = "Option::is_none")]
64 pub access_token_validity: Option<String>,
65 #[serde(rename = "refresh_token_validity", skip_serializing_if = "Option::is_none")]
67 pub refresh_token_validity: Option<String>,
68 #[serde(rename = "include_claims_in_id_token", skip_serializing_if = "Option::is_none")]
70 pub include_claims_in_id_token: Option<bool>,
71 #[serde(rename = "signing_key", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
73 pub signing_key: Option<Option<uuid::Uuid>>,
74 #[serde(rename = "redirect_uris", skip_serializing_if = "Option::is_none")]
76 pub redirect_uris: Option<String>,
77 #[serde(rename = "sub_mode", skip_serializing_if = "Option::is_none")]
79 pub sub_mode: Option<models::SubModeEnum>,
80 #[serde(rename = "issuer_mode", skip_serializing_if = "Option::is_none")]
82 pub issuer_mode: Option<models::IssuerModeEnum>,
83 #[serde(rename = "jwks_sources", skip_serializing_if = "Option::is_none")]
84 pub jwks_sources: Option<Vec<uuid::Uuid>>,
85}
86
87impl OAuth2Provider {
88 pub fn new(pk: i32, name: String, authorization_flow: uuid::Uuid, component: String, assigned_application_slug: String, assigned_application_name: String, assigned_backchannel_application_slug: String, assigned_backchannel_application_name: String, verbose_name: String, verbose_name_plural: String, meta_model_name: String) -> OAuth2Provider {
90 OAuth2Provider {
91 pk,
92 name,
93 authentication_flow: None,
94 authorization_flow,
95 property_mappings: None,
96 component,
97 assigned_application_slug,
98 assigned_application_name,
99 assigned_backchannel_application_slug,
100 assigned_backchannel_application_name,
101 verbose_name,
102 verbose_name_plural,
103 meta_model_name,
104 client_type: None,
105 client_id: None,
106 client_secret: None,
107 access_code_validity: None,
108 access_token_validity: None,
109 refresh_token_validity: None,
110 include_claims_in_id_token: None,
111 signing_key: None,
112 redirect_uris: None,
113 sub_mode: None,
114 issuer_mode: None,
115 jwks_sources: None,
116 }
117 }
118}
119