Skip to main content

authentik_client/models/
application_request.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/// ApplicationRequest : Application Serializer
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct ApplicationRequest {
17    /// Application's display Name.
18    #[serde(rename = "name")]
19    pub name: String,
20    /// Internal application name, used in URLs.
21    #[serde(rename = "slug")]
22    pub slug: String,
23    #[serde(
24        rename = "provider",
25        default,
26        with = "::serde_with::rust::double_option",
27        skip_serializing_if = "Option::is_none"
28    )]
29    pub provider: Option<Option<i32>>,
30    #[serde(rename = "backchannel_providers", skip_serializing_if = "Option::is_none")]
31    pub backchannel_providers: Option<Vec<i32>>,
32    /// Open launch URL in a new browser tab or window.
33    #[serde(rename = "open_in_new_tab", skip_serializing_if = "Option::is_none")]
34    pub open_in_new_tab: Option<bool>,
35    #[serde(rename = "meta_launch_url", skip_serializing_if = "Option::is_none")]
36    pub meta_launch_url: Option<String>,
37    #[serde(rename = "meta_icon", skip_serializing_if = "Option::is_none")]
38    pub meta_icon: Option<String>,
39    #[serde(rename = "meta_description", skip_serializing_if = "Option::is_none")]
40    pub meta_description: Option<String>,
41    #[serde(rename = "meta_publisher", skip_serializing_if = "Option::is_none")]
42    pub meta_publisher: Option<String>,
43    #[serde(rename = "policy_engine_mode", skip_serializing_if = "Option::is_none")]
44    pub policy_engine_mode: Option<models::PolicyEngineMode>,
45    #[serde(rename = "group", skip_serializing_if = "Option::is_none")]
46    pub group: Option<String>,
47}
48
49impl ApplicationRequest {
50    /// Application Serializer
51    pub fn new(name: String, slug: String) -> ApplicationRequest {
52        ApplicationRequest {
53            name,
54            slug,
55            provider: None,
56            backchannel_providers: None,
57            open_in_new_tab: None,
58            meta_launch_url: None,
59            meta_icon: None,
60            meta_description: None,
61            meta_publisher: None,
62            policy_engine_mode: None,
63            group: None,
64        }
65    }
66}