fusionauth_rust_client/models/
web_authn_credential.rs

1/*
2 * FusionAuth API
3 *
4 * This is a FusionAuth server. Find out more at [https://fusionauth.io](https://fusionauth.io). You need to [set up an API key](https://fusionauth.io/docs/v1/tech/apis/authentication#managing-api-keys) in the FusionAuth instance you are using to test out the API calls.
5 *
6 * The version of the OpenAPI document: 1.57.1
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// WebAuthnCredential : A User's WebAuthnCredential. Contains all data required to complete WebAuthn authentication ceremonies.
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct WebAuthnCredential {
17    #[serde(rename = "algorithm", skip_serializing_if = "Option::is_none")]
18    pub algorithm: Option<models::CoseAlgorithmIdentifier>,
19    #[serde(rename = "attestationType", skip_serializing_if = "Option::is_none")]
20    pub attestation_type: Option<models::AttestationType>,
21    #[serde(rename = "authenticatorSupportsUserVerification", skip_serializing_if = "Option::is_none")]
22    pub authenticator_supports_user_verification: Option<bool>,
23    #[serde(rename = "credentialId", skip_serializing_if = "Option::is_none")]
24    pub credential_id: Option<String>,
25    #[serde(rename = "data", skip_serializing_if = "Option::is_none")]
26    pub data: Option<std::collections::HashMap<String, serde_json::Value>>,
27    #[serde(rename = "discoverable", skip_serializing_if = "Option::is_none")]
28    pub discoverable: Option<bool>,
29    #[serde(rename = "displayName", skip_serializing_if = "Option::is_none")]
30    pub display_name: Option<String>,
31    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
32    pub id: Option<uuid::Uuid>,
33    /// The number of milliseconds since the unix epoch: January 1, 1970 00:00:00 UTC. This value is always in UTC.
34    #[serde(rename = "insertInstant", skip_serializing_if = "Option::is_none")]
35    pub insert_instant: Option<i64>,
36    /// The number of milliseconds since the unix epoch: January 1, 1970 00:00:00 UTC. This value is always in UTC.
37    #[serde(rename = "lastUseInstant", skip_serializing_if = "Option::is_none")]
38    pub last_use_instant: Option<i64>,
39    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
40    pub name: Option<String>,
41    #[serde(rename = "publicKey", skip_serializing_if = "Option::is_none")]
42    pub public_key: Option<String>,
43    #[serde(rename = "relyingPartyId", skip_serializing_if = "Option::is_none")]
44    pub relying_party_id: Option<String>,
45    #[serde(rename = "signCount", skip_serializing_if = "Option::is_none")]
46    pub sign_count: Option<i32>,
47    #[serde(rename = "tenantId", skip_serializing_if = "Option::is_none")]
48    pub tenant_id: Option<uuid::Uuid>,
49    #[serde(rename = "transports", skip_serializing_if = "Option::is_none")]
50    pub transports: Option<Vec<String>>,
51    #[serde(rename = "userAgent", skip_serializing_if = "Option::is_none")]
52    pub user_agent: Option<String>,
53    #[serde(rename = "userId", skip_serializing_if = "Option::is_none")]
54    pub user_id: Option<uuid::Uuid>,
55}
56
57impl WebAuthnCredential {
58    /// A User's WebAuthnCredential. Contains all data required to complete WebAuthn authentication ceremonies.
59    pub fn new() -> WebAuthnCredential {
60        WebAuthnCredential {
61            algorithm: None,
62            attestation_type: None,
63            authenticator_supports_user_verification: None,
64            credential_id: None,
65            data: None,
66            discoverable: None,
67            display_name: None,
68            id: None,
69            insert_instant: None,
70            last_use_instant: None,
71            name: None,
72            public_key: None,
73            relying_party_id: None,
74            sign_count: None,
75            tenant_id: None,
76            transports: None,
77            user_agent: None,
78            user_id: None,
79        }
80    }
81}
82