Skip to main content

authentik_client/models/
expiring_base_grant_model.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/// ExpiringBaseGrantModel : Serializer for BaseGrantModel and ExpiringBaseGrant
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct ExpiringBaseGrantModel {
17    #[serde(rename = "pk")]
18    pub pk: i32,
19    #[serde(rename = "provider")]
20    pub provider: models::OAuth2Provider,
21    #[serde(rename = "user")]
22    pub user: models::User,
23    /// Check if token is expired yet.
24    #[serde(rename = "is_expired")]
25    pub is_expired: bool,
26    #[serde(
27        rename = "expires",
28        default,
29        with = "::serde_with::rust::double_option",
30        skip_serializing_if = "Option::is_none"
31    )]
32    pub expires: Option<Option<String>>,
33    #[serde(rename = "scope")]
34    pub scope: Vec<String>,
35}
36
37impl ExpiringBaseGrantModel {
38    /// Serializer for BaseGrantModel and ExpiringBaseGrant
39    pub fn new(
40        pk: i32,
41        provider: models::OAuth2Provider,
42        user: models::User,
43        is_expired: bool,
44        scope: Vec<String>,
45    ) -> ExpiringBaseGrantModel {
46        ExpiringBaseGrantModel {
47            pk,
48            provider,
49            user,
50            is_expired,
51            expires: None,
52            scope,
53        }
54    }
55}