proxmox_api/generated/access/users/userid/
tfa.rs1pub struct TfaClient<T> {
2 client: T,
3 path: String,
4}
5impl<T> TfaClient<T>
6where
7 T: crate::client::Client,
8{
9 pub fn new(client: T, parent_path: &str) -> Self {
10 Self {
11 client,
12 path: format!("{}{}", parent_path, "/tfa"),
13 }
14 }
15}
16impl<T> TfaClient<T>
17where
18 T: crate::client::Client,
19{
20 #[doc = "Get user TFA types (Personal and Realm)."]
21 pub fn get(&self, params: GetParams) -> Result<GetOutput, T::Error> {
22 let path = self.path.to_string();
23 self.client.get(&path, ¶ms)
24 }
25}
26#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize, Default)]
27pub struct GetOutput {
28 #[serde(skip_serializing_if = "Option::is_none", default)]
29 #[doc = "The type of TFA the users realm has set, if any."]
30 pub realm: Option<Realm>,
31 #[serde(skip_serializing_if = "::std::vec::Vec::is_empty", default)]
32 #[doc = "Array of the user configured TFA types, if any. Only available if 'multiple' was not passed."]
33 pub types: Vec<Types>,
34 #[serde(skip_serializing_if = "Option::is_none", default)]
35 #[doc = "The type of TFA the user has set, if any. Only set if 'multiple' was not passed."]
36 pub user: Option<User>,
37}
38#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize, Default)]
39pub struct GetParams {
40 #[serde(
41 serialize_with = "crate::types::serialize_bool_optional",
42 deserialize_with = "crate::types::deserialize_bool_optional"
43 )]
44 #[serde(skip_serializing_if = "Option::is_none", default)]
45 #[doc = "Request all entries as an array."]
46 pub multiple: Option<bool>,
47 #[serde(
48 flatten,
49 default,
50 skip_serializing_if = "::std::collections::HashMap::is_empty"
51 )]
52 pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
53}
54#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
55pub enum Realm {
56 #[serde(rename = "oath")]
57 Oath,
58 #[serde(rename = "yubico")]
59 Yubico,
60}
61#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
62pub enum Types {
63 #[serde(rename = "recovedry")]
64 Recovedry,
65 #[serde(rename = "totp")]
66 Totp,
67 #[serde(rename = "u2f")]
68 U2f,
69 #[serde(rename = "webauthn")]
70 Webauthn,
71 #[serde(rename = "yubico")]
72 Yubico,
73}
74#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
75pub enum User {
76 #[serde(rename = "oath")]
77 Oath,
78 #[serde(rename = "u2f")]
79 U2f,
80}