Skip to main content

authentik_client/models/
endpoint_device_request.rs

1/*
2 * authentik
3 *
4 * Making authentication simple.
5 *
6 * The version of the OpenAPI document: 2026.2.0
7 * Contact: hello@goauthentik.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct EndpointDeviceRequest {
16    #[serde(rename = "device_uuid", skip_serializing_if = "Option::is_none")]
17    pub device_uuid: Option<uuid::Uuid>,
18    #[serde(rename = "name")]
19    pub name: String,
20    #[serde(
21        rename = "access_group",
22        default,
23        with = "::serde_with::rust::double_option",
24        skip_serializing_if = "Option::is_none"
25    )]
26    pub access_group: Option<Option<uuid::Uuid>>,
27    #[serde(rename = "access_group_obj", skip_serializing_if = "Option::is_none")]
28    pub access_group_obj: Option<models::DeviceAccessGroupRequest>,
29    #[serde(rename = "expiring", skip_serializing_if = "Option::is_none")]
30    pub expiring: Option<bool>,
31    #[serde(
32        rename = "expires",
33        default,
34        with = "::serde_with::rust::double_option",
35        skip_serializing_if = "Option::is_none"
36    )]
37    pub expires: Option<Option<String>>,
38    #[serde(rename = "attributes", skip_serializing_if = "Option::is_none")]
39    pub attributes: Option<std::collections::HashMap<String, serde_json::Value>>,
40}
41
42impl EndpointDeviceRequest {
43    pub fn new(name: String) -> EndpointDeviceRequest {
44        EndpointDeviceRequest {
45            device_uuid: None,
46            name,
47            access_group: None,
48            access_group_obj: None,
49            expiring: None,
50            expires: None,
51            attributes: None,
52        }
53    }
54}