authentik_client/models/
source_type.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct SourceType {
17 #[serde(rename = "name")]
18 pub name: String,
19 #[serde(rename = "verbose_name")]
20 pub verbose_name: String,
21 #[serde(rename = "urls_customizable")]
22 pub urls_customizable: bool,
23 #[serde(rename = "request_token_url", deserialize_with = "Option::deserialize")]
24 pub request_token_url: Option<String>,
25 #[serde(rename = "authorization_url", deserialize_with = "Option::deserialize")]
26 pub authorization_url: Option<String>,
27 #[serde(rename = "access_token_url", deserialize_with = "Option::deserialize")]
28 pub access_token_url: Option<String>,
29 #[serde(rename = "profile_url", deserialize_with = "Option::deserialize")]
30 pub profile_url: Option<String>,
31 #[serde(rename = "oidc_well_known_url", deserialize_with = "Option::deserialize")]
32 pub oidc_well_known_url: Option<String>,
33 #[serde(rename = "oidc_jwks_url", deserialize_with = "Option::deserialize")]
34 pub oidc_jwks_url: Option<String>,
35}
36
37impl SourceType {
38 pub fn new(
40 name: String,
41 verbose_name: String,
42 urls_customizable: bool,
43 request_token_url: Option<String>,
44 authorization_url: Option<String>,
45 access_token_url: Option<String>,
46 profile_url: Option<String>,
47 oidc_well_known_url: Option<String>,
48 oidc_jwks_url: Option<String>,
49 ) -> SourceType {
50 SourceType {
51 name,
52 verbose_name,
53 urls_customizable,
54 request_token_url,
55 authorization_url,
56 access_token_url,
57 profile_url,
58 oidc_well_known_url,
59 oidc_jwks_url,
60 }
61 }
62}