bitwarden_api_api/models/
organization_subscription_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#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct OrganizationSubscriptionResponseModel {
17    #[serde(rename = "object", skip_serializing_if = "Option::is_none")]
18    pub object: Option<String>,
19    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
20    pub id: Option<uuid::Uuid>,
21    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
22    pub name: Option<String>,
23    #[serde(rename = "businessName", skip_serializing_if = "Option::is_none")]
24    pub business_name: Option<String>,
25    #[serde(rename = "businessAddress1", skip_serializing_if = "Option::is_none")]
26    pub business_address1: Option<String>,
27    #[serde(rename = "businessAddress2", skip_serializing_if = "Option::is_none")]
28    pub business_address2: Option<String>,
29    #[serde(rename = "businessAddress3", skip_serializing_if = "Option::is_none")]
30    pub business_address3: Option<String>,
31    #[serde(rename = "businessCountry", skip_serializing_if = "Option::is_none")]
32    pub business_country: Option<String>,
33    #[serde(rename = "businessTaxNumber", skip_serializing_if = "Option::is_none")]
34    pub business_tax_number: Option<String>,
35    #[serde(rename = "billingEmail", skip_serializing_if = "Option::is_none")]
36    pub billing_email: Option<String>,
37    #[serde(rename = "plan", skip_serializing_if = "Option::is_none")]
38    pub plan: Option<Box<models::PlanResponseModel>>,
39    #[serde(rename = "secretsManagerPlan", skip_serializing_if = "Option::is_none")]
40    pub secrets_manager_plan: Option<Box<models::PlanResponseModel>>,
41    #[serde(rename = "planType", skip_serializing_if = "Option::is_none")]
42    pub plan_type: Option<models::PlanType>,
43    #[serde(rename = "seats", skip_serializing_if = "Option::is_none")]
44    pub seats: Option<i32>,
45    #[serde(rename = "maxAutoscaleSeats", skip_serializing_if = "Option::is_none")]
46    pub max_autoscale_seats: Option<i32>,
47    #[serde(rename = "maxCollections", skip_serializing_if = "Option::is_none")]
48    pub max_collections: Option<i32>,
49    #[serde(rename = "maxStorageGb", skip_serializing_if = "Option::is_none")]
50    pub max_storage_gb: Option<i32>,
51    #[serde(rename = "usePolicies", skip_serializing_if = "Option::is_none")]
52    pub use_policies: Option<bool>,
53    #[serde(rename = "useSso", skip_serializing_if = "Option::is_none")]
54    pub use_sso: Option<bool>,
55    #[serde(rename = "useKeyConnector", skip_serializing_if = "Option::is_none")]
56    pub use_key_connector: Option<bool>,
57    #[serde(rename = "useScim", skip_serializing_if = "Option::is_none")]
58    pub use_scim: Option<bool>,
59    #[serde(rename = "useGroups", skip_serializing_if = "Option::is_none")]
60    pub use_groups: Option<bool>,
61    #[serde(rename = "useDirectory", skip_serializing_if = "Option::is_none")]
62    pub use_directory: Option<bool>,
63    #[serde(rename = "useEvents", skip_serializing_if = "Option::is_none")]
64    pub use_events: Option<bool>,
65    #[serde(rename = "useTotp", skip_serializing_if = "Option::is_none")]
66    pub use_totp: Option<bool>,
67    #[serde(rename = "use2fa", skip_serializing_if = "Option::is_none")]
68    pub use2fa: Option<bool>,
69    #[serde(rename = "useApi", skip_serializing_if = "Option::is_none")]
70    pub use_api: Option<bool>,
71    #[serde(rename = "useSecretsManager", skip_serializing_if = "Option::is_none")]
72    pub use_secrets_manager: Option<bool>,
73    #[serde(rename = "useResetPassword", skip_serializing_if = "Option::is_none")]
74    pub use_reset_password: Option<bool>,
75    #[serde(rename = "usersGetPremium", skip_serializing_if = "Option::is_none")]
76    pub users_get_premium: Option<bool>,
77    #[serde(
78        rename = "useCustomPermissions",
79        skip_serializing_if = "Option::is_none"
80    )]
81    pub use_custom_permissions: Option<bool>,
82    #[serde(rename = "selfHost", skip_serializing_if = "Option::is_none")]
83    pub self_host: Option<bool>,
84    #[serde(
85        rename = "hasPublicAndPrivateKeys",
86        skip_serializing_if = "Option::is_none"
87    )]
88    pub has_public_and_private_keys: Option<bool>,
89    #[serde(rename = "usePasswordManager", skip_serializing_if = "Option::is_none")]
90    pub use_password_manager: Option<bool>,
91    #[serde(rename = "smSeats", skip_serializing_if = "Option::is_none")]
92    pub sm_seats: Option<i32>,
93    #[serde(rename = "smServiceAccounts", skip_serializing_if = "Option::is_none")]
94    pub sm_service_accounts: Option<i32>,
95    #[serde(
96        rename = "maxAutoscaleSmSeats",
97        skip_serializing_if = "Option::is_none"
98    )]
99    pub max_autoscale_sm_seats: Option<i32>,
100    #[serde(
101        rename = "maxAutoscaleSmServiceAccounts",
102        skip_serializing_if = "Option::is_none"
103    )]
104    pub max_autoscale_sm_service_accounts: Option<i32>,
105    #[serde(
106        rename = "limitCollectionCreation",
107        skip_serializing_if = "Option::is_none"
108    )]
109    pub limit_collection_creation: Option<bool>,
110    #[serde(
111        rename = "limitCollectionDeletion",
112        skip_serializing_if = "Option::is_none"
113    )]
114    pub limit_collection_deletion: Option<bool>,
115    #[serde(rename = "limitItemDeletion", skip_serializing_if = "Option::is_none")]
116    pub limit_item_deletion: Option<bool>,
117    #[serde(
118        rename = "allowAdminAccessToAllCollectionItems",
119        skip_serializing_if = "Option::is_none"
120    )]
121    pub allow_admin_access_to_all_collection_items: Option<bool>,
122    #[serde(rename = "useRiskInsights", skip_serializing_if = "Option::is_none")]
123    pub use_risk_insights: Option<bool>,
124    #[serde(
125        rename = "useOrganizationDomains",
126        skip_serializing_if = "Option::is_none"
127    )]
128    pub use_organization_domains: Option<bool>,
129    #[serde(
130        rename = "useAdminSponsoredFamilies",
131        skip_serializing_if = "Option::is_none"
132    )]
133    pub use_admin_sponsored_families: Option<bool>,
134    #[serde(rename = "storageName", skip_serializing_if = "Option::is_none")]
135    pub storage_name: Option<String>,
136    #[serde(rename = "storageGb", skip_serializing_if = "Option::is_none")]
137    pub storage_gb: Option<f64>,
138    #[serde(rename = "customerDiscount", skip_serializing_if = "Option::is_none")]
139    pub customer_discount: Option<Box<models::BillingCustomerDiscount>>,
140    #[serde(rename = "subscription", skip_serializing_if = "Option::is_none")]
141    pub subscription: Option<Box<models::BillingSubscription>>,
142    #[serde(rename = "upcomingInvoice", skip_serializing_if = "Option::is_none")]
143    pub upcoming_invoice: Option<Box<models::BillingSubscriptionUpcomingInvoice>>,
144    /// Date when a self-hosted organization's subscription expires, without any grace period.
145    #[serde(
146        rename = "expirationWithoutGracePeriod",
147        skip_serializing_if = "Option::is_none"
148    )]
149    pub expiration_without_grace_period: Option<String>,
150    /// Date when a self-hosted organization expires (includes grace period).
151    #[serde(rename = "expiration", skip_serializing_if = "Option::is_none")]
152    pub expiration: Option<String>,
153}
154
155impl OrganizationSubscriptionResponseModel {
156    pub fn new() -> OrganizationSubscriptionResponseModel {
157        OrganizationSubscriptionResponseModel {
158            object: None,
159            id: None,
160            name: None,
161            business_name: None,
162            business_address1: None,
163            business_address2: None,
164            business_address3: None,
165            business_country: None,
166            business_tax_number: None,
167            billing_email: None,
168            plan: None,
169            secrets_manager_plan: None,
170            plan_type: None,
171            seats: None,
172            max_autoscale_seats: None,
173            max_collections: None,
174            max_storage_gb: None,
175            use_policies: None,
176            use_sso: None,
177            use_key_connector: None,
178            use_scim: None,
179            use_groups: None,
180            use_directory: None,
181            use_events: None,
182            use_totp: None,
183            use2fa: None,
184            use_api: None,
185            use_secrets_manager: None,
186            use_reset_password: None,
187            users_get_premium: None,
188            use_custom_permissions: None,
189            self_host: None,
190            has_public_and_private_keys: None,
191            use_password_manager: None,
192            sm_seats: None,
193            sm_service_accounts: None,
194            max_autoscale_sm_seats: None,
195            max_autoscale_sm_service_accounts: None,
196            limit_collection_creation: None,
197            limit_collection_deletion: None,
198            limit_item_deletion: None,
199            allow_admin_access_to_all_collection_items: None,
200            use_risk_insights: None,
201            use_organization_domains: None,
202            use_admin_sponsored_families: None,
203            storage_name: None,
204            storage_gb: None,
205            customer_discount: None,
206            subscription: None,
207            upcoming_invoice: None,
208            expiration_without_grace_period: None,
209            expiration: None,
210        }
211    }
212}