Skip to main content

authentik_client/models/
authenticated_session.rs

1/*
2 * authentik
3 *
4 * Making authentication simple.
5 *
6 * The version of the OpenAPI document: 2025.8.6
7 * Contact: hello@goauthentik.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// AuthenticatedSession : AuthenticatedSession Serializer
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct AuthenticatedSession {
17    #[serde(rename = "uuid", skip_serializing_if = "Option::is_none")]
18    pub uuid: Option<uuid::Uuid>,
19    /// Check if session is currently active session
20    #[serde(rename = "current")]
21    pub current: bool,
22    #[serde(rename = "user_agent")]
23    pub user_agent: models::AuthenticatedSessionUserAgent,
24    #[serde(rename = "geo_ip", deserialize_with = "Option::deserialize")]
25    pub geo_ip: Option<models::AuthenticatedSessionGeoIp>,
26    #[serde(rename = "asn", deserialize_with = "Option::deserialize")]
27    pub asn: Option<models::AuthenticatedSessionAsn>,
28    #[serde(rename = "user")]
29    pub user: i32,
30    #[serde(rename = "last_ip")]
31    pub last_ip: String,
32    #[serde(rename = "last_user_agent")]
33    pub last_user_agent: String,
34    #[serde(rename = "last_used")]
35    pub last_used: String,
36    #[serde(rename = "expires")]
37    pub expires: String,
38}
39
40impl AuthenticatedSession {
41    /// AuthenticatedSession Serializer
42    pub fn new(
43        current: bool,
44        user_agent: models::AuthenticatedSessionUserAgent,
45        geo_ip: Option<models::AuthenticatedSessionGeoIp>,
46        asn: Option<models::AuthenticatedSessionAsn>,
47        user: i32,
48        last_ip: String,
49        last_user_agent: String,
50        last_used: String,
51        expires: String,
52    ) -> AuthenticatedSession {
53        AuthenticatedSession {
54            uuid: None,
55            current,
56            user_agent,
57            geo_ip,
58            asn,
59            user,
60            last_ip,
61            last_user_agent,
62            last_used,
63            expires,
64        }
65    }
66}