smart_id_rust_client/models/
session.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
4pub struct SessionCertificate {
5 #[serde(skip_serializing_if = "Option::is_none")]
6 pub value: Option<String>,
7 #[serde(skip_serializing_if = "Option::is_none")]
8 #[serde(rename = "certificateLevel")]
9 pub certificate_level: Option<String>,
10}
11
12#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
13pub struct SessionResult {
14 #[serde(rename = "endResult")]
15 pub end_result: String,
16 #[serde(skip_serializing_if = "Option::is_none")]
17 #[serde(rename = "documentNumber")]
18 pub document_number: Option<String>,
19}
20
21#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
22pub struct SessionSignature {
23 #[serde(skip_serializing_if = "Option::is_none")]
24 pub algorithm: Option<String>,
25 #[serde(skip_serializing_if = "Option::is_none")]
26 pub value: Option<String>,
27}
28
29#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Default)]
30pub struct SessionStatus {
31 pub state: String,
32 pub result: SessionResult,
33 #[serde(skip_serializing_if = "Option::is_none")]
34 pub signature: Option<SessionSignature>,
35 #[serde(skip_serializing_if = "Option::is_none")]
36 pub cert: Option<SessionCertificate>,
37 #[serde(skip_serializing_if = "Option::is_none")]
38 #[serde(rename = "ignoredProperties")]
39 pub ignored_properties: Option<Vec<String>>,
40 #[serde(skip_serializing_if = "Option::is_none")]
41 #[serde(rename = "interactionFlowUsed")]
42 pub interaction_flow_used: Option<String>,
43 #[serde(skip_serializing_if = "Option::is_none")]
44 #[serde(rename = "deviceIpAddress")]
45 pub device_ip_address: Option<String>,
46}
47