1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct OrganizationLicense {
17 #[serde(
18 rename = "licenseKey",
19 alias = "LicenseKey",
20 skip_serializing_if = "Option::is_none"
21 )]
22 pub license_key: Option<String>,
23 #[serde(
24 rename = "installationId",
25 alias = "InstallationId",
26 skip_serializing_if = "Option::is_none"
27 )]
28 pub installation_id: Option<uuid::Uuid>,
29 #[serde(rename = "id", alias = "Id", skip_serializing_if = "Option::is_none")]
30 pub id: Option<uuid::Uuid>,
31 #[serde(
32 rename = "name",
33 alias = "Name",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub name: Option<String>,
37 #[serde(
38 rename = "billingEmail",
39 alias = "BillingEmail",
40 skip_serializing_if = "Option::is_none"
41 )]
42 pub billing_email: Option<String>,
43 #[serde(
44 rename = "businessName",
45 alias = "BusinessName",
46 skip_serializing_if = "Option::is_none"
47 )]
48 pub business_name: Option<String>,
49 #[serde(
50 rename = "enabled",
51 alias = "Enabled",
52 skip_serializing_if = "Option::is_none"
53 )]
54 pub enabled: Option<bool>,
55 #[serde(
56 rename = "plan",
57 alias = "Plan",
58 skip_serializing_if = "Option::is_none"
59 )]
60 pub plan: Option<String>,
61 #[serde(
62 rename = "planType",
63 alias = "PlanType",
64 skip_serializing_if = "Option::is_none"
65 )]
66 pub plan_type: Option<models::PlanType>,
67 #[serde(
68 rename = "seats",
69 alias = "Seats",
70 skip_serializing_if = "Option::is_none"
71 )]
72 pub seats: Option<i32>,
73 #[serde(
74 rename = "maxCollections",
75 alias = "MaxCollections",
76 skip_serializing_if = "Option::is_none"
77 )]
78 pub max_collections: Option<i32>,
79 #[serde(
80 rename = "usePolicies",
81 alias = "UsePolicies",
82 skip_serializing_if = "Option::is_none"
83 )]
84 pub use_policies: Option<bool>,
85 #[serde(
86 rename = "useSso",
87 alias = "UseSso",
88 skip_serializing_if = "Option::is_none"
89 )]
90 pub use_sso: Option<bool>,
91 #[serde(
92 rename = "useKeyConnector",
93 alias = "UseKeyConnector",
94 skip_serializing_if = "Option::is_none"
95 )]
96 pub use_key_connector: Option<bool>,
97 #[serde(
98 rename = "useScim",
99 alias = "UseScim",
100 skip_serializing_if = "Option::is_none"
101 )]
102 pub use_scim: Option<bool>,
103 #[serde(
104 rename = "useGroups",
105 alias = "UseGroups",
106 skip_serializing_if = "Option::is_none"
107 )]
108 pub use_groups: Option<bool>,
109 #[serde(
110 rename = "useEvents",
111 alias = "UseEvents",
112 skip_serializing_if = "Option::is_none"
113 )]
114 pub use_events: Option<bool>,
115 #[serde(
116 rename = "useDirectory",
117 alias = "UseDirectory",
118 skip_serializing_if = "Option::is_none"
119 )]
120 pub use_directory: Option<bool>,
121 #[serde(
122 rename = "useTotp",
123 alias = "UseTotp",
124 skip_serializing_if = "Option::is_none"
125 )]
126 pub use_totp: Option<bool>,
127 #[serde(
128 rename = "use2fa",
129 alias = "Use2fa",
130 skip_serializing_if = "Option::is_none"
131 )]
132 pub use2fa: Option<bool>,
133 #[serde(
134 rename = "useApi",
135 alias = "UseApi",
136 skip_serializing_if = "Option::is_none"
137 )]
138 pub use_api: Option<bool>,
139 #[serde(
140 rename = "useResetPassword",
141 alias = "UseResetPassword",
142 skip_serializing_if = "Option::is_none"
143 )]
144 pub use_reset_password: Option<bool>,
145 #[serde(
146 rename = "maxStorageGb",
147 alias = "MaxStorageGb",
148 skip_serializing_if = "Option::is_none"
149 )]
150 pub max_storage_gb: Option<i32>,
151 #[serde(
152 rename = "selfHost",
153 alias = "SelfHost",
154 skip_serializing_if = "Option::is_none"
155 )]
156 pub self_host: Option<bool>,
157 #[serde(
158 rename = "usersGetPremium",
159 alias = "UsersGetPremium",
160 skip_serializing_if = "Option::is_none"
161 )]
162 pub users_get_premium: Option<bool>,
163 #[serde(
164 rename = "useCustomPermissions",
165 alias = "UseCustomPermissions",
166 skip_serializing_if = "Option::is_none"
167 )]
168 pub use_custom_permissions: Option<bool>,
169 #[serde(
170 rename = "version",
171 alias = "Version",
172 skip_serializing_if = "Option::is_none"
173 )]
174 pub version: Option<i32>,
175 #[serde(
176 rename = "issued",
177 alias = "Issued",
178 skip_serializing_if = "Option::is_none"
179 )]
180 pub issued: Option<String>,
181 #[serde(
182 rename = "refresh",
183 alias = "Refresh",
184 skip_serializing_if = "Option::is_none"
185 )]
186 pub refresh: Option<String>,
187 #[serde(
188 rename = "expires",
189 alias = "Expires",
190 skip_serializing_if = "Option::is_none"
191 )]
192 pub expires: Option<String>,
193 #[serde(
194 rename = "expirationWithoutGracePeriod",
195 alias = "ExpirationWithoutGracePeriod",
196 skip_serializing_if = "Option::is_none"
197 )]
198 pub expiration_without_grace_period: Option<String>,
199 #[serde(
200 rename = "usePasswordManager",
201 alias = "UsePasswordManager",
202 skip_serializing_if = "Option::is_none"
203 )]
204 pub use_password_manager: Option<bool>,
205 #[serde(
206 rename = "useSecretsManager",
207 alias = "UseSecretsManager",
208 skip_serializing_if = "Option::is_none"
209 )]
210 pub use_secrets_manager: Option<bool>,
211 #[serde(
212 rename = "smSeats",
213 alias = "SmSeats",
214 skip_serializing_if = "Option::is_none"
215 )]
216 pub sm_seats: Option<i32>,
217 #[serde(
218 rename = "smServiceAccounts",
219 alias = "SmServiceAccounts",
220 skip_serializing_if = "Option::is_none"
221 )]
222 pub sm_service_accounts: Option<i32>,
223 #[serde(
224 rename = "useRiskInsights",
225 alias = "UseRiskInsights",
226 skip_serializing_if = "Option::is_none"
227 )]
228 pub use_risk_insights: Option<bool>,
229 #[serde(
230 rename = "limitCollectionCreationDeletion",
231 alias = "LimitCollectionCreationDeletion",
232 skip_serializing_if = "Option::is_none"
233 )]
234 pub limit_collection_creation_deletion: Option<bool>,
235 #[serde(
236 rename = "allowAdminAccessToAllCollectionItems",
237 alias = "AllowAdminAccessToAllCollectionItems",
238 skip_serializing_if = "Option::is_none"
239 )]
240 pub allow_admin_access_to_all_collection_items: Option<bool>,
241 #[serde(
242 rename = "trial",
243 alias = "Trial",
244 skip_serializing_if = "Option::is_none"
245 )]
246 pub trial: Option<bool>,
247 #[serde(
248 rename = "licenseType",
249 alias = "LicenseType",
250 skip_serializing_if = "Option::is_none"
251 )]
252 pub license_type: Option<models::LicenseType>,
253 #[serde(
254 rename = "useOrganizationDomains",
255 alias = "UseOrganizationDomains",
256 skip_serializing_if = "Option::is_none"
257 )]
258 pub use_organization_domains: Option<bool>,
259 #[serde(
260 rename = "useAdminSponsoredFamilies",
261 alias = "UseAdminSponsoredFamilies",
262 skip_serializing_if = "Option::is_none"
263 )]
264 pub use_admin_sponsored_families: Option<bool>,
265 #[serde(
266 rename = "useAutomaticUserConfirmation",
267 alias = "UseAutomaticUserConfirmation",
268 skip_serializing_if = "Option::is_none"
269 )]
270 pub use_automatic_user_confirmation: Option<bool>,
271 #[serde(
272 rename = "hash",
273 alias = "Hash",
274 skip_serializing_if = "Option::is_none"
275 )]
276 pub hash: Option<String>,
277 #[serde(
278 rename = "signature",
279 alias = "Signature",
280 skip_serializing_if = "Option::is_none"
281 )]
282 pub signature: Option<String>,
283 #[serde(
284 rename = "token",
285 alias = "Token",
286 skip_serializing_if = "Option::is_none"
287 )]
288 pub token: Option<String>,
289}
290
291impl OrganizationLicense {
292 pub fn new() -> OrganizationLicense {
293 OrganizationLicense {
294 license_key: None,
295 installation_id: None,
296 id: None,
297 name: None,
298 billing_email: None,
299 business_name: None,
300 enabled: None,
301 plan: None,
302 plan_type: None,
303 seats: None,
304 max_collections: None,
305 use_policies: None,
306 use_sso: None,
307 use_key_connector: None,
308 use_scim: None,
309 use_groups: None,
310 use_events: None,
311 use_directory: None,
312 use_totp: None,
313 use2fa: None,
314 use_api: None,
315 use_reset_password: None,
316 max_storage_gb: None,
317 self_host: None,
318 users_get_premium: None,
319 use_custom_permissions: None,
320 version: None,
321 issued: None,
322 refresh: None,
323 expires: None,
324 expiration_without_grace_period: None,
325 use_password_manager: None,
326 use_secrets_manager: None,
327 sm_seats: None,
328 sm_service_accounts: None,
329 use_risk_insights: None,
330 limit_collection_creation_deletion: None,
331 allow_admin_access_to_all_collection_items: None,
332 trial: None,
333 license_type: None,
334 use_organization_domains: None,
335 use_admin_sponsored_families: None,
336 use_automatic_user_confirmation: None,
337 hash: None,
338 signature: None,
339 token: None,
340 }
341 }
342}