Skip to main content

bitwarden_api_api/models/
access_lease_response_model.rs

1/*
2 * Bitwarden Internal API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: latest
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15/// AccessLeaseResponseModel : An access lease, with
16/// Bit.Services.Pam.Api.Models.Response.AccessLeaseResponseModel.Status derived against the read
17/// clock.
18#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
19pub struct AccessLeaseResponseModel {
20    #[serde(
21        rename = "object",
22        alias = "Object",
23        skip_serializing_if = "Option::is_none"
24    )]
25    pub object: Option<String>,
26    #[serde(rename = "id", alias = "Id", skip_serializing_if = "Option::is_none")]
27    pub id: Option<uuid::Uuid>,
28    #[serde(
29        rename = "requestId",
30        alias = "RequestId",
31        skip_serializing_if = "Option::is_none"
32    )]
33    pub request_id: Option<uuid::Uuid>,
34    #[serde(
35        rename = "cipherId",
36        alias = "CipherId",
37        skip_serializing_if = "Option::is_none"
38    )]
39    pub cipher_id: Option<uuid::Uuid>,
40    /// The collection through which the lease was granted.
41    #[serde(
42        rename = "collectionId",
43        alias = "CollectionId",
44        skip_serializing_if = "Option::is_none"
45    )]
46    pub collection_id: Option<uuid::Uuid>,
47    /// Always null; leases do not record their rule.
48    #[serde(
49        rename = "ruleId",
50        alias = "RuleId",
51        skip_serializing_if = "Option::is_none"
52    )]
53    pub rule_id: Option<String>,
54    #[serde(
55        rename = "organizationId",
56        alias = "OrganizationId",
57        skip_serializing_if = "Option::is_none"
58    )]
59    pub organization_id: Option<uuid::Uuid>,
60    #[serde(
61        rename = "requesterId",
62        alias = "RequesterId",
63        skip_serializing_if = "Option::is_none"
64    )]
65    pub requester_id: Option<uuid::Uuid>,
66    #[serde(
67        rename = "status",
68        alias = "Status",
69        skip_serializing_if = "Option::is_none"
70    )]
71    pub status: Option<models::AccessLeaseStatus>,
72    #[serde(
73        rename = "notBefore",
74        alias = "NotBefore",
75        skip_serializing_if = "Option::is_none"
76    )]
77    pub not_before: Option<String>,
78    #[serde(
79        rename = "notAfter",
80        alias = "NotAfter",
81        skip_serializing_if = "Option::is_none"
82    )]
83    pub not_after: Option<String>,
84    /// When the lease was revoked or cancelled early; otherwise null.
85    #[serde(
86        rename = "revokedAt",
87        alias = "RevokedAt",
88        skip_serializing_if = "Option::is_none"
89    )]
90    pub revoked_at: Option<String>,
91    /// Who revoked or cancelled the lease early; otherwise null.
92    #[serde(
93        rename = "revokedByUserId",
94        alias = "RevokedByUserId",
95        skip_serializing_if = "Option::is_none"
96    )]
97    pub revoked_by_user_id: Option<uuid::Uuid>,
98    /// Always null; the reason is recorded as a decision on the originating request.
99    #[serde(
100        rename = "revocationReason",
101        alias = "RevocationReason",
102        skip_serializing_if = "Option::is_none"
103    )]
104    pub revocation_reason: Option<String>,
105}
106
107impl AccessLeaseResponseModel {
108    /// An access lease, with Bit.Services.Pam.Api.Models.Response.AccessLeaseResponseModel.Status
109    /// derived against the read clock.
110    pub fn new() -> AccessLeaseResponseModel {
111        AccessLeaseResponseModel {
112            object: None,
113            id: None,
114            request_id: None,
115            cipher_id: None,
116            collection_id: None,
117            rule_id: None,
118            organization_id: None,
119            requester_id: None,
120            status: None,
121            not_before: None,
122            not_after: None,
123            revoked_at: None,
124            revoked_by_user_id: None,
125            revocation_reason: None,
126        }
127    }
128}