1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct OrganizationSubscriptionResponseModel {
17 #[serde(
18 rename = "object",
19 alias = "Object",
20 skip_serializing_if = "Option::is_none"
21 )]
22 pub object: Option<String>,
23 #[serde(rename = "id", alias = "Id", skip_serializing_if = "Option::is_none")]
24 pub id: Option<uuid::Uuid>,
25 #[serde(
26 rename = "name",
27 alias = "Name",
28 skip_serializing_if = "Option::is_none"
29 )]
30 pub name: Option<String>,
31 #[serde(
32 rename = "businessName",
33 alias = "BusinessName",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub business_name: Option<String>,
37 #[serde(
38 rename = "businessAddress1",
39 alias = "BusinessAddress1",
40 skip_serializing_if = "Option::is_none"
41 )]
42 pub business_address1: Option<String>,
43 #[serde(
44 rename = "businessAddress2",
45 alias = "BusinessAddress2",
46 skip_serializing_if = "Option::is_none"
47 )]
48 pub business_address2: Option<String>,
49 #[serde(
50 rename = "businessAddress3",
51 alias = "BusinessAddress3",
52 skip_serializing_if = "Option::is_none"
53 )]
54 pub business_address3: Option<String>,
55 #[serde(
56 rename = "businessCountry",
57 alias = "BusinessCountry",
58 skip_serializing_if = "Option::is_none"
59 )]
60 pub business_country: Option<String>,
61 #[serde(
62 rename = "businessTaxNumber",
63 alias = "BusinessTaxNumber",
64 skip_serializing_if = "Option::is_none"
65 )]
66 pub business_tax_number: Option<String>,
67 #[serde(
68 rename = "billingEmail",
69 alias = "BillingEmail",
70 skip_serializing_if = "Option::is_none"
71 )]
72 pub billing_email: Option<String>,
73 #[serde(
74 rename = "plan",
75 alias = "Plan",
76 skip_serializing_if = "Option::is_none"
77 )]
78 pub plan: Option<Box<models::PlanResponseModel>>,
79 #[serde(
80 rename = "secretsManagerPlan",
81 alias = "SecretsManagerPlan",
82 skip_serializing_if = "Option::is_none"
83 )]
84 pub secrets_manager_plan: Option<Box<models::PlanResponseModel>>,
85 #[serde(
86 rename = "planType",
87 alias = "PlanType",
88 skip_serializing_if = "Option::is_none"
89 )]
90 pub plan_type: Option<models::PlanType>,
91 #[serde(
92 rename = "seats",
93 alias = "Seats",
94 skip_serializing_if = "Option::is_none"
95 )]
96 pub seats: Option<i32>,
97 #[serde(
98 rename = "maxAutoscaleSeats",
99 alias = "MaxAutoscaleSeats",
100 skip_serializing_if = "Option::is_none"
101 )]
102 pub max_autoscale_seats: Option<i32>,
103 #[serde(
104 rename = "maxCollections",
105 alias = "MaxCollections",
106 skip_serializing_if = "Option::is_none"
107 )]
108 pub max_collections: Option<i32>,
109 #[serde(
110 rename = "maxStorageGb",
111 alias = "MaxStorageGb",
112 skip_serializing_if = "Option::is_none"
113 )]
114 pub max_storage_gb: Option<i32>,
115 #[serde(
116 rename = "usePolicies",
117 alias = "UsePolicies",
118 skip_serializing_if = "Option::is_none"
119 )]
120 pub use_policies: Option<bool>,
121 #[serde(
122 rename = "useSso",
123 alias = "UseSso",
124 skip_serializing_if = "Option::is_none"
125 )]
126 pub use_sso: Option<bool>,
127 #[serde(
128 rename = "useKeyConnector",
129 alias = "UseKeyConnector",
130 skip_serializing_if = "Option::is_none"
131 )]
132 pub use_key_connector: Option<bool>,
133 #[serde(
134 rename = "useScim",
135 alias = "UseScim",
136 skip_serializing_if = "Option::is_none"
137 )]
138 pub use_scim: Option<bool>,
139 #[serde(
140 rename = "useGroups",
141 alias = "UseGroups",
142 skip_serializing_if = "Option::is_none"
143 )]
144 pub use_groups: Option<bool>,
145 #[serde(
146 rename = "useDirectory",
147 alias = "UseDirectory",
148 skip_serializing_if = "Option::is_none"
149 )]
150 pub use_directory: Option<bool>,
151 #[serde(
152 rename = "useEvents",
153 alias = "UseEvents",
154 skip_serializing_if = "Option::is_none"
155 )]
156 pub use_events: Option<bool>,
157 #[serde(
158 rename = "useTotp",
159 alias = "UseTotp",
160 skip_serializing_if = "Option::is_none"
161 )]
162 pub use_totp: Option<bool>,
163 #[serde(
164 rename = "use2fa",
165 alias = "Use2fa",
166 skip_serializing_if = "Option::is_none"
167 )]
168 pub use2fa: Option<bool>,
169 #[serde(
170 rename = "useApi",
171 alias = "UseApi",
172 skip_serializing_if = "Option::is_none"
173 )]
174 pub use_api: Option<bool>,
175 #[serde(
176 rename = "useSecretsManager",
177 alias = "UseSecretsManager",
178 skip_serializing_if = "Option::is_none"
179 )]
180 pub use_secrets_manager: Option<bool>,
181 #[serde(
182 rename = "useResetPassword",
183 alias = "UseResetPassword",
184 skip_serializing_if = "Option::is_none"
185 )]
186 pub use_reset_password: Option<bool>,
187 #[serde(
188 rename = "usersGetPremium",
189 alias = "UsersGetPremium",
190 skip_serializing_if = "Option::is_none"
191 )]
192 pub users_get_premium: Option<bool>,
193 #[serde(
194 rename = "useCustomPermissions",
195 alias = "UseCustomPermissions",
196 skip_serializing_if = "Option::is_none"
197 )]
198 pub use_custom_permissions: Option<bool>,
199 #[serde(
200 rename = "selfHost",
201 alias = "SelfHost",
202 skip_serializing_if = "Option::is_none"
203 )]
204 pub self_host: Option<bool>,
205 #[serde(
206 rename = "hasPublicAndPrivateKeys",
207 alias = "HasPublicAndPrivateKeys",
208 skip_serializing_if = "Option::is_none"
209 )]
210 pub has_public_and_private_keys: Option<bool>,
211 #[serde(
212 rename = "usePasswordManager",
213 alias = "UsePasswordManager",
214 skip_serializing_if = "Option::is_none"
215 )]
216 pub use_password_manager: Option<bool>,
217 #[serde(
218 rename = "smSeats",
219 alias = "SmSeats",
220 skip_serializing_if = "Option::is_none"
221 )]
222 pub sm_seats: Option<i32>,
223 #[serde(
224 rename = "smServiceAccounts",
225 alias = "SmServiceAccounts",
226 skip_serializing_if = "Option::is_none"
227 )]
228 pub sm_service_accounts: Option<i32>,
229 #[serde(
230 rename = "maxAutoscaleSmSeats",
231 alias = "MaxAutoscaleSmSeats",
232 skip_serializing_if = "Option::is_none"
233 )]
234 pub max_autoscale_sm_seats: Option<i32>,
235 #[serde(
236 rename = "maxAutoscaleSmServiceAccounts",
237 alias = "MaxAutoscaleSmServiceAccounts",
238 skip_serializing_if = "Option::is_none"
239 )]
240 pub max_autoscale_sm_service_accounts: Option<i32>,
241 #[serde(
242 rename = "limitCollectionCreation",
243 alias = "LimitCollectionCreation",
244 skip_serializing_if = "Option::is_none"
245 )]
246 pub limit_collection_creation: Option<bool>,
247 #[serde(
248 rename = "limitCollectionDeletion",
249 alias = "LimitCollectionDeletion",
250 skip_serializing_if = "Option::is_none"
251 )]
252 pub limit_collection_deletion: Option<bool>,
253 #[serde(
254 rename = "limitItemDeletion",
255 alias = "LimitItemDeletion",
256 skip_serializing_if = "Option::is_none"
257 )]
258 pub limit_item_deletion: Option<bool>,
259 #[serde(
260 rename = "allowAdminAccessToAllCollectionItems",
261 alias = "AllowAdminAccessToAllCollectionItems",
262 skip_serializing_if = "Option::is_none"
263 )]
264 pub allow_admin_access_to_all_collection_items: Option<bool>,
265 #[serde(
266 rename = "useRiskInsights",
267 alias = "UseRiskInsights",
268 skip_serializing_if = "Option::is_none"
269 )]
270 pub use_risk_insights: Option<bool>,
271 #[serde(
272 rename = "useOrganizationDomains",
273 alias = "UseOrganizationDomains",
274 skip_serializing_if = "Option::is_none"
275 )]
276 pub use_organization_domains: Option<bool>,
277 #[serde(
278 rename = "useAdminSponsoredFamilies",
279 alias = "UseAdminSponsoredFamilies",
280 skip_serializing_if = "Option::is_none"
281 )]
282 pub use_admin_sponsored_families: Option<bool>,
283 #[serde(
284 rename = "useAutomaticUserConfirmation",
285 alias = "UseAutomaticUserConfirmation",
286 skip_serializing_if = "Option::is_none"
287 )]
288 pub use_automatic_user_confirmation: Option<bool>,
289 #[serde(
290 rename = "usePhishingBlocker",
291 alias = "UsePhishingBlocker",
292 skip_serializing_if = "Option::is_none"
293 )]
294 pub use_phishing_blocker: Option<bool>,
295 #[serde(
296 rename = "storageName",
297 alias = "StorageName",
298 skip_serializing_if = "Option::is_none"
299 )]
300 pub storage_name: Option<String>,
301 #[serde(
302 rename = "storageGb",
303 alias = "StorageGb",
304 skip_serializing_if = "Option::is_none"
305 )]
306 pub storage_gb: Option<f64>,
307 #[serde(
308 rename = "customerDiscount",
309 alias = "CustomerDiscount",
310 skip_serializing_if = "Option::is_none"
311 )]
312 pub customer_discount: Option<Box<models::BillingCustomerDiscount>>,
313 #[serde(
314 rename = "subscription",
315 alias = "Subscription",
316 skip_serializing_if = "Option::is_none"
317 )]
318 pub subscription: Option<Box<models::BillingSubscription>>,
319 #[serde(
320 rename = "upcomingInvoice",
321 alias = "UpcomingInvoice",
322 skip_serializing_if = "Option::is_none"
323 )]
324 pub upcoming_invoice: Option<Box<models::BillingSubscriptionUpcomingInvoice>>,
325 #[serde(
327 rename = "expirationWithoutGracePeriod",
328 alias = "ExpirationWithoutGracePeriod",
329 skip_serializing_if = "Option::is_none"
330 )]
331 pub expiration_without_grace_period: Option<String>,
332 #[serde(
334 rename = "expiration",
335 alias = "Expiration",
336 skip_serializing_if = "Option::is_none"
337 )]
338 pub expiration: Option<String>,
339}
340
341impl OrganizationSubscriptionResponseModel {
342 pub fn new() -> OrganizationSubscriptionResponseModel {
343 OrganizationSubscriptionResponseModel {
344 object: None,
345 id: None,
346 name: None,
347 business_name: None,
348 business_address1: None,
349 business_address2: None,
350 business_address3: None,
351 business_country: None,
352 business_tax_number: None,
353 billing_email: None,
354 plan: None,
355 secrets_manager_plan: None,
356 plan_type: None,
357 seats: None,
358 max_autoscale_seats: None,
359 max_collections: None,
360 max_storage_gb: None,
361 use_policies: None,
362 use_sso: None,
363 use_key_connector: None,
364 use_scim: None,
365 use_groups: None,
366 use_directory: None,
367 use_events: None,
368 use_totp: None,
369 use2fa: None,
370 use_api: None,
371 use_secrets_manager: None,
372 use_reset_password: None,
373 users_get_premium: None,
374 use_custom_permissions: None,
375 self_host: None,
376 has_public_and_private_keys: None,
377 use_password_manager: None,
378 sm_seats: None,
379 sm_service_accounts: None,
380 max_autoscale_sm_seats: None,
381 max_autoscale_sm_service_accounts: None,
382 limit_collection_creation: None,
383 limit_collection_deletion: None,
384 limit_item_deletion: None,
385 allow_admin_access_to_all_collection_items: None,
386 use_risk_insights: None,
387 use_organization_domains: None,
388 use_admin_sponsored_families: None,
389 use_automatic_user_confirmation: None,
390 use_phishing_blocker: None,
391 storage_name: None,
392 storage_gb: None,
393 customer_discount: None,
394 subscription: None,
395 upcoming_invoice: None,
396 expiration_without_grace_period: None,
397 expiration: None,
398 }
399 }
400}