1use std::sync::Arc;
12
13use async_trait::async_trait;
14#[cfg(feature = "mockall")]
15use mockall::automock;
16use reqwest;
17use serde::{Deserialize, Serialize, de::Error as _};
18
19use super::{Error, configuration};
20use crate::{
21 apis::{ContentType, ResponseContent},
22 models,
23};
24
25#[cfg_attr(feature = "mockall", automock)]
26#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
27#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
28pub trait OrganizationBillingVNextApi: Send + Sync {
29 async fn add_credit_via_bit_pay<'a>(
31 &self,
32 organization_id: &'a str,
33 id: Option<uuid::Uuid>,
34 identifier: Option<&'a str>,
35 name: Option<&'a str>,
36 business_name: Option<&'a str>,
37 business_address1: Option<&'a str>,
38 business_address2: Option<&'a str>,
39 business_address3: Option<&'a str>,
40 business_country: Option<&'a str>,
41 business_tax_number: Option<&'a str>,
42 billing_email: Option<&'a str>,
43 plan: Option<&'a str>,
44 plan_type: Option<models::PlanType>,
45 seats: Option<i32>,
46 max_collections: Option<i32>,
47 use_policies: Option<bool>,
48 use_sso: Option<bool>,
49 use_key_connector: Option<bool>,
50 use_scim: Option<bool>,
51 use_groups: Option<bool>,
52 use_directory: Option<bool>,
53 use_events: Option<bool>,
54 use_totp: Option<bool>,
55 use2fa: Option<bool>,
56 use_api: Option<bool>,
57 use_reset_password: Option<bool>,
58 use_secrets_manager: Option<bool>,
59 self_host: Option<bool>,
60 users_get_premium: Option<bool>,
61 use_custom_permissions: Option<bool>,
62 storage: Option<i64>,
63 max_storage_gb: Option<i32>,
64 gateway: Option<models::GatewayType>,
65 gateway_customer_id: Option<&'a str>,
66 gateway_subscription_id: Option<&'a str>,
67 reference_data: Option<&'a str>,
68 enabled: Option<bool>,
69 license_key: Option<&'a str>,
70 public_key: Option<&'a str>,
71 private_key: Option<&'a str>,
72 two_factor_providers: Option<&'a str>,
73 expiration_date: Option<String>,
74 creation_date: Option<String>,
75 revision_date: Option<String>,
76 max_autoscale_seats: Option<i32>,
77 owners_notified_of_autoscaling: Option<String>,
78 status: Option<models::OrganizationStatusType>,
79 use_password_manager: Option<bool>,
80 sm_seats: Option<i32>,
81 sm_service_accounts: Option<i32>,
82 max_autoscale_sm_seats: Option<i32>,
83 max_autoscale_sm_service_accounts: Option<i32>,
84 limit_collection_creation: Option<bool>,
85 limit_collection_deletion: Option<bool>,
86 allow_admin_access_to_all_collection_items: Option<bool>,
87 limit_item_deletion: Option<bool>,
88 use_risk_insights: Option<bool>,
89 use_organization_domains: Option<bool>,
90 use_admin_sponsored_families: Option<bool>,
91 sync_seats: Option<bool>,
92 use_automatic_user_confirmation: Option<bool>,
93 use_phishing_blocker: Option<bool>,
94 bit_pay_credit_request: Option<models::BitPayCreditRequest>,
95 ) -> Result<(), Error<AddCreditViaBitPayError>>;
96
97 async fn get_billing_address<'a>(
99 &self,
100 organization_id: &'a str,
101 id: Option<uuid::Uuid>,
102 identifier: Option<&'a str>,
103 name: Option<&'a str>,
104 business_name: Option<&'a str>,
105 business_address1: Option<&'a str>,
106 business_address2: Option<&'a str>,
107 business_address3: Option<&'a str>,
108 business_country: Option<&'a str>,
109 business_tax_number: Option<&'a str>,
110 billing_email: Option<&'a str>,
111 plan: Option<&'a str>,
112 plan_type: Option<models::PlanType>,
113 seats: Option<i32>,
114 max_collections: Option<i32>,
115 use_policies: Option<bool>,
116 use_sso: Option<bool>,
117 use_key_connector: Option<bool>,
118 use_scim: Option<bool>,
119 use_groups: Option<bool>,
120 use_directory: Option<bool>,
121 use_events: Option<bool>,
122 use_totp: Option<bool>,
123 use2fa: Option<bool>,
124 use_api: Option<bool>,
125 use_reset_password: Option<bool>,
126 use_secrets_manager: Option<bool>,
127 self_host: Option<bool>,
128 users_get_premium: Option<bool>,
129 use_custom_permissions: Option<bool>,
130 storage: Option<i64>,
131 max_storage_gb: Option<i32>,
132 gateway: Option<models::GatewayType>,
133 gateway_customer_id: Option<&'a str>,
134 gateway_subscription_id: Option<&'a str>,
135 reference_data: Option<&'a str>,
136 enabled: Option<bool>,
137 license_key: Option<&'a str>,
138 public_key: Option<&'a str>,
139 private_key: Option<&'a str>,
140 two_factor_providers: Option<&'a str>,
141 expiration_date: Option<String>,
142 creation_date: Option<String>,
143 revision_date: Option<String>,
144 max_autoscale_seats: Option<i32>,
145 owners_notified_of_autoscaling: Option<String>,
146 status: Option<models::OrganizationStatusType>,
147 use_password_manager: Option<bool>,
148 sm_seats: Option<i32>,
149 sm_service_accounts: Option<i32>,
150 max_autoscale_sm_seats: Option<i32>,
151 max_autoscale_sm_service_accounts: Option<i32>,
152 limit_collection_creation: Option<bool>,
153 limit_collection_deletion: Option<bool>,
154 allow_admin_access_to_all_collection_items: Option<bool>,
155 limit_item_deletion: Option<bool>,
156 use_risk_insights: Option<bool>,
157 use_organization_domains: Option<bool>,
158 use_admin_sponsored_families: Option<bool>,
159 sync_seats: Option<bool>,
160 use_automatic_user_confirmation: Option<bool>,
161 use_phishing_blocker: Option<bool>,
162 ) -> Result<(), Error<GetBillingAddressError>>;
163
164 async fn get_credit<'a>(
166 &self,
167 organization_id: &'a str,
168 id: Option<uuid::Uuid>,
169 identifier: Option<&'a str>,
170 name: Option<&'a str>,
171 business_name: Option<&'a str>,
172 business_address1: Option<&'a str>,
173 business_address2: Option<&'a str>,
174 business_address3: Option<&'a str>,
175 business_country: Option<&'a str>,
176 business_tax_number: Option<&'a str>,
177 billing_email: Option<&'a str>,
178 plan: Option<&'a str>,
179 plan_type: Option<models::PlanType>,
180 seats: Option<i32>,
181 max_collections: Option<i32>,
182 use_policies: Option<bool>,
183 use_sso: Option<bool>,
184 use_key_connector: Option<bool>,
185 use_scim: Option<bool>,
186 use_groups: Option<bool>,
187 use_directory: Option<bool>,
188 use_events: Option<bool>,
189 use_totp: Option<bool>,
190 use2fa: Option<bool>,
191 use_api: Option<bool>,
192 use_reset_password: Option<bool>,
193 use_secrets_manager: Option<bool>,
194 self_host: Option<bool>,
195 users_get_premium: Option<bool>,
196 use_custom_permissions: Option<bool>,
197 storage: Option<i64>,
198 max_storage_gb: Option<i32>,
199 gateway: Option<models::GatewayType>,
200 gateway_customer_id: Option<&'a str>,
201 gateway_subscription_id: Option<&'a str>,
202 reference_data: Option<&'a str>,
203 enabled: Option<bool>,
204 license_key: Option<&'a str>,
205 public_key: Option<&'a str>,
206 private_key: Option<&'a str>,
207 two_factor_providers: Option<&'a str>,
208 expiration_date: Option<String>,
209 creation_date: Option<String>,
210 revision_date: Option<String>,
211 max_autoscale_seats: Option<i32>,
212 owners_notified_of_autoscaling: Option<String>,
213 status: Option<models::OrganizationStatusType>,
214 use_password_manager: Option<bool>,
215 sm_seats: Option<i32>,
216 sm_service_accounts: Option<i32>,
217 max_autoscale_sm_seats: Option<i32>,
218 max_autoscale_sm_service_accounts: Option<i32>,
219 limit_collection_creation: Option<bool>,
220 limit_collection_deletion: Option<bool>,
221 allow_admin_access_to_all_collection_items: Option<bool>,
222 limit_item_deletion: Option<bool>,
223 use_risk_insights: Option<bool>,
224 use_organization_domains: Option<bool>,
225 use_admin_sponsored_families: Option<bool>,
226 sync_seats: Option<bool>,
227 use_automatic_user_confirmation: Option<bool>,
228 use_phishing_blocker: Option<bool>,
229 ) -> Result<(), Error<GetCreditError>>;
230
231 async fn get_metadata<'a>(
233 &self,
234 organization_id: &'a str,
235 id: Option<uuid::Uuid>,
236 identifier: Option<&'a str>,
237 name: Option<&'a str>,
238 business_name: Option<&'a str>,
239 business_address1: Option<&'a str>,
240 business_address2: Option<&'a str>,
241 business_address3: Option<&'a str>,
242 business_country: Option<&'a str>,
243 business_tax_number: Option<&'a str>,
244 billing_email: Option<&'a str>,
245 plan: Option<&'a str>,
246 plan_type: Option<models::PlanType>,
247 seats: Option<i32>,
248 max_collections: Option<i32>,
249 use_policies: Option<bool>,
250 use_sso: Option<bool>,
251 use_key_connector: Option<bool>,
252 use_scim: Option<bool>,
253 use_groups: Option<bool>,
254 use_directory: Option<bool>,
255 use_events: Option<bool>,
256 use_totp: Option<bool>,
257 use2fa: Option<bool>,
258 use_api: Option<bool>,
259 use_reset_password: Option<bool>,
260 use_secrets_manager: Option<bool>,
261 self_host: Option<bool>,
262 users_get_premium: Option<bool>,
263 use_custom_permissions: Option<bool>,
264 storage: Option<i64>,
265 max_storage_gb: Option<i32>,
266 gateway: Option<models::GatewayType>,
267 gateway_customer_id: Option<&'a str>,
268 gateway_subscription_id: Option<&'a str>,
269 reference_data: Option<&'a str>,
270 enabled: Option<bool>,
271 license_key: Option<&'a str>,
272 public_key: Option<&'a str>,
273 private_key: Option<&'a str>,
274 two_factor_providers: Option<&'a str>,
275 expiration_date: Option<String>,
276 creation_date: Option<String>,
277 revision_date: Option<String>,
278 max_autoscale_seats: Option<i32>,
279 owners_notified_of_autoscaling: Option<String>,
280 status: Option<models::OrganizationStatusType>,
281 use_password_manager: Option<bool>,
282 sm_seats: Option<i32>,
283 sm_service_accounts: Option<i32>,
284 max_autoscale_sm_seats: Option<i32>,
285 max_autoscale_sm_service_accounts: Option<i32>,
286 limit_collection_creation: Option<bool>,
287 limit_collection_deletion: Option<bool>,
288 allow_admin_access_to_all_collection_items: Option<bool>,
289 limit_item_deletion: Option<bool>,
290 use_risk_insights: Option<bool>,
291 use_organization_domains: Option<bool>,
292 use_admin_sponsored_families: Option<bool>,
293 sync_seats: Option<bool>,
294 use_automatic_user_confirmation: Option<bool>,
295 use_phishing_blocker: Option<bool>,
296 ) -> Result<(), Error<GetMetadataError>>;
297
298 async fn get_payment_method<'a>(
300 &self,
301 organization_id: &'a str,
302 id: Option<uuid::Uuid>,
303 identifier: Option<&'a str>,
304 name: Option<&'a str>,
305 business_name: Option<&'a str>,
306 business_address1: Option<&'a str>,
307 business_address2: Option<&'a str>,
308 business_address3: Option<&'a str>,
309 business_country: Option<&'a str>,
310 business_tax_number: Option<&'a str>,
311 billing_email: Option<&'a str>,
312 plan: Option<&'a str>,
313 plan_type: Option<models::PlanType>,
314 seats: Option<i32>,
315 max_collections: Option<i32>,
316 use_policies: Option<bool>,
317 use_sso: Option<bool>,
318 use_key_connector: Option<bool>,
319 use_scim: Option<bool>,
320 use_groups: Option<bool>,
321 use_directory: Option<bool>,
322 use_events: Option<bool>,
323 use_totp: Option<bool>,
324 use2fa: Option<bool>,
325 use_api: Option<bool>,
326 use_reset_password: Option<bool>,
327 use_secrets_manager: Option<bool>,
328 self_host: Option<bool>,
329 users_get_premium: Option<bool>,
330 use_custom_permissions: Option<bool>,
331 storage: Option<i64>,
332 max_storage_gb: Option<i32>,
333 gateway: Option<models::GatewayType>,
334 gateway_customer_id: Option<&'a str>,
335 gateway_subscription_id: Option<&'a str>,
336 reference_data: Option<&'a str>,
337 enabled: Option<bool>,
338 license_key: Option<&'a str>,
339 public_key: Option<&'a str>,
340 private_key: Option<&'a str>,
341 two_factor_providers: Option<&'a str>,
342 expiration_date: Option<String>,
343 creation_date: Option<String>,
344 revision_date: Option<String>,
345 max_autoscale_seats: Option<i32>,
346 owners_notified_of_autoscaling: Option<String>,
347 status: Option<models::OrganizationStatusType>,
348 use_password_manager: Option<bool>,
349 sm_seats: Option<i32>,
350 sm_service_accounts: Option<i32>,
351 max_autoscale_sm_seats: Option<i32>,
352 max_autoscale_sm_service_accounts: Option<i32>,
353 limit_collection_creation: Option<bool>,
354 limit_collection_deletion: Option<bool>,
355 allow_admin_access_to_all_collection_items: Option<bool>,
356 limit_item_deletion: Option<bool>,
357 use_risk_insights: Option<bool>,
358 use_organization_domains: Option<bool>,
359 use_admin_sponsored_families: Option<bool>,
360 sync_seats: Option<bool>,
361 use_automatic_user_confirmation: Option<bool>,
362 use_phishing_blocker: Option<bool>,
363 ) -> Result<(), Error<GetPaymentMethodError>>;
364
365 async fn get_warnings<'a>(
367 &self,
368 organization_id: &'a str,
369 id: Option<uuid::Uuid>,
370 identifier: Option<&'a str>,
371 name: Option<&'a str>,
372 business_name: Option<&'a str>,
373 business_address1: Option<&'a str>,
374 business_address2: Option<&'a str>,
375 business_address3: Option<&'a str>,
376 business_country: Option<&'a str>,
377 business_tax_number: Option<&'a str>,
378 billing_email: Option<&'a str>,
379 plan: Option<&'a str>,
380 plan_type: Option<models::PlanType>,
381 seats: Option<i32>,
382 max_collections: Option<i32>,
383 use_policies: Option<bool>,
384 use_sso: Option<bool>,
385 use_key_connector: Option<bool>,
386 use_scim: Option<bool>,
387 use_groups: Option<bool>,
388 use_directory: Option<bool>,
389 use_events: Option<bool>,
390 use_totp: Option<bool>,
391 use2fa: Option<bool>,
392 use_api: Option<bool>,
393 use_reset_password: Option<bool>,
394 use_secrets_manager: Option<bool>,
395 self_host: Option<bool>,
396 users_get_premium: Option<bool>,
397 use_custom_permissions: Option<bool>,
398 storage: Option<i64>,
399 max_storage_gb: Option<i32>,
400 gateway: Option<models::GatewayType>,
401 gateway_customer_id: Option<&'a str>,
402 gateway_subscription_id: Option<&'a str>,
403 reference_data: Option<&'a str>,
404 enabled: Option<bool>,
405 license_key: Option<&'a str>,
406 public_key: Option<&'a str>,
407 private_key: Option<&'a str>,
408 two_factor_providers: Option<&'a str>,
409 expiration_date: Option<String>,
410 creation_date: Option<String>,
411 revision_date: Option<String>,
412 max_autoscale_seats: Option<i32>,
413 owners_notified_of_autoscaling: Option<String>,
414 status: Option<models::OrganizationStatusType>,
415 use_password_manager: Option<bool>,
416 sm_seats: Option<i32>,
417 sm_service_accounts: Option<i32>,
418 max_autoscale_sm_seats: Option<i32>,
419 max_autoscale_sm_service_accounts: Option<i32>,
420 limit_collection_creation: Option<bool>,
421 limit_collection_deletion: Option<bool>,
422 allow_admin_access_to_all_collection_items: Option<bool>,
423 limit_item_deletion: Option<bool>,
424 use_risk_insights: Option<bool>,
425 use_organization_domains: Option<bool>,
426 use_admin_sponsored_families: Option<bool>,
427 sync_seats: Option<bool>,
428 use_automatic_user_confirmation: Option<bool>,
429 use_phishing_blocker: Option<bool>,
430 ) -> Result<(), Error<GetWarningsError>>;
431
432 async fn restart_subscription<'a>(
434 &self,
435 organization_id: &'a str,
436 id: Option<uuid::Uuid>,
437 identifier: Option<&'a str>,
438 name: Option<&'a str>,
439 business_name: Option<&'a str>,
440 business_address1: Option<&'a str>,
441 business_address2: Option<&'a str>,
442 business_address3: Option<&'a str>,
443 business_country: Option<&'a str>,
444 business_tax_number: Option<&'a str>,
445 billing_email: Option<&'a str>,
446 plan: Option<&'a str>,
447 plan_type: Option<models::PlanType>,
448 seats: Option<i32>,
449 max_collections: Option<i32>,
450 use_policies: Option<bool>,
451 use_sso: Option<bool>,
452 use_key_connector: Option<bool>,
453 use_scim: Option<bool>,
454 use_groups: Option<bool>,
455 use_directory: Option<bool>,
456 use_events: Option<bool>,
457 use_totp: Option<bool>,
458 use2fa: Option<bool>,
459 use_api: Option<bool>,
460 use_reset_password: Option<bool>,
461 use_secrets_manager: Option<bool>,
462 self_host: Option<bool>,
463 users_get_premium: Option<bool>,
464 use_custom_permissions: Option<bool>,
465 storage: Option<i64>,
466 max_storage_gb: Option<i32>,
467 gateway: Option<models::GatewayType>,
468 gateway_customer_id: Option<&'a str>,
469 gateway_subscription_id: Option<&'a str>,
470 reference_data: Option<&'a str>,
471 enabled: Option<bool>,
472 license_key: Option<&'a str>,
473 public_key: Option<&'a str>,
474 private_key: Option<&'a str>,
475 two_factor_providers: Option<&'a str>,
476 expiration_date: Option<String>,
477 creation_date: Option<String>,
478 revision_date: Option<String>,
479 max_autoscale_seats: Option<i32>,
480 owners_notified_of_autoscaling: Option<String>,
481 status: Option<models::OrganizationStatusType>,
482 use_password_manager: Option<bool>,
483 sm_seats: Option<i32>,
484 sm_service_accounts: Option<i32>,
485 max_autoscale_sm_seats: Option<i32>,
486 max_autoscale_sm_service_accounts: Option<i32>,
487 limit_collection_creation: Option<bool>,
488 limit_collection_deletion: Option<bool>,
489 allow_admin_access_to_all_collection_items: Option<bool>,
490 limit_item_deletion: Option<bool>,
491 use_risk_insights: Option<bool>,
492 use_organization_domains: Option<bool>,
493 use_admin_sponsored_families: Option<bool>,
494 sync_seats: Option<bool>,
495 use_automatic_user_confirmation: Option<bool>,
496 use_phishing_blocker: Option<bool>,
497 restart_subscription_request: Option<models::RestartSubscriptionRequest>,
498 ) -> Result<(), Error<RestartSubscriptionError>>;
499
500 async fn update_billing_address<'a>(
502 &self,
503 organization_id: &'a str,
504 id: Option<uuid::Uuid>,
505 identifier: Option<&'a str>,
506 name: Option<&'a str>,
507 business_name: Option<&'a str>,
508 business_address1: Option<&'a str>,
509 business_address2: Option<&'a str>,
510 business_address3: Option<&'a str>,
511 business_country: Option<&'a str>,
512 business_tax_number: Option<&'a str>,
513 billing_email: Option<&'a str>,
514 plan: Option<&'a str>,
515 plan_type: Option<models::PlanType>,
516 seats: Option<i32>,
517 max_collections: Option<i32>,
518 use_policies: Option<bool>,
519 use_sso: Option<bool>,
520 use_key_connector: Option<bool>,
521 use_scim: Option<bool>,
522 use_groups: Option<bool>,
523 use_directory: Option<bool>,
524 use_events: Option<bool>,
525 use_totp: Option<bool>,
526 use2fa: Option<bool>,
527 use_api: Option<bool>,
528 use_reset_password: Option<bool>,
529 use_secrets_manager: Option<bool>,
530 self_host: Option<bool>,
531 users_get_premium: Option<bool>,
532 use_custom_permissions: Option<bool>,
533 storage: Option<i64>,
534 max_storage_gb: Option<i32>,
535 gateway: Option<models::GatewayType>,
536 gateway_customer_id: Option<&'a str>,
537 gateway_subscription_id: Option<&'a str>,
538 reference_data: Option<&'a str>,
539 enabled: Option<bool>,
540 license_key: Option<&'a str>,
541 public_key: Option<&'a str>,
542 private_key: Option<&'a str>,
543 two_factor_providers: Option<&'a str>,
544 expiration_date: Option<String>,
545 creation_date: Option<String>,
546 revision_date: Option<String>,
547 max_autoscale_seats: Option<i32>,
548 owners_notified_of_autoscaling: Option<String>,
549 status: Option<models::OrganizationStatusType>,
550 use_password_manager: Option<bool>,
551 sm_seats: Option<i32>,
552 sm_service_accounts: Option<i32>,
553 max_autoscale_sm_seats: Option<i32>,
554 max_autoscale_sm_service_accounts: Option<i32>,
555 limit_collection_creation: Option<bool>,
556 limit_collection_deletion: Option<bool>,
557 allow_admin_access_to_all_collection_items: Option<bool>,
558 limit_item_deletion: Option<bool>,
559 use_risk_insights: Option<bool>,
560 use_organization_domains: Option<bool>,
561 use_admin_sponsored_families: Option<bool>,
562 sync_seats: Option<bool>,
563 use_automatic_user_confirmation: Option<bool>,
564 use_phishing_blocker: Option<bool>,
565 billing_address_request: Option<models::BillingAddressRequest>,
566 ) -> Result<(), Error<UpdateBillingAddressError>>;
567
568 async fn update_payment_method<'a>(
570 &self,
571 organization_id: &'a str,
572 id: Option<uuid::Uuid>,
573 identifier: Option<&'a str>,
574 name: Option<&'a str>,
575 business_name: Option<&'a str>,
576 business_address1: Option<&'a str>,
577 business_address2: Option<&'a str>,
578 business_address3: Option<&'a str>,
579 business_country: Option<&'a str>,
580 business_tax_number: Option<&'a str>,
581 billing_email: Option<&'a str>,
582 plan: Option<&'a str>,
583 plan_type: Option<models::PlanType>,
584 seats: Option<i32>,
585 max_collections: Option<i32>,
586 use_policies: Option<bool>,
587 use_sso: Option<bool>,
588 use_key_connector: Option<bool>,
589 use_scim: Option<bool>,
590 use_groups: Option<bool>,
591 use_directory: Option<bool>,
592 use_events: Option<bool>,
593 use_totp: Option<bool>,
594 use2fa: Option<bool>,
595 use_api: Option<bool>,
596 use_reset_password: Option<bool>,
597 use_secrets_manager: Option<bool>,
598 self_host: Option<bool>,
599 users_get_premium: Option<bool>,
600 use_custom_permissions: Option<bool>,
601 storage: Option<i64>,
602 max_storage_gb: Option<i32>,
603 gateway: Option<models::GatewayType>,
604 gateway_customer_id: Option<&'a str>,
605 gateway_subscription_id: Option<&'a str>,
606 reference_data: Option<&'a str>,
607 enabled: Option<bool>,
608 license_key: Option<&'a str>,
609 public_key: Option<&'a str>,
610 private_key: Option<&'a str>,
611 two_factor_providers: Option<&'a str>,
612 expiration_date: Option<String>,
613 creation_date: Option<String>,
614 revision_date: Option<String>,
615 max_autoscale_seats: Option<i32>,
616 owners_notified_of_autoscaling: Option<String>,
617 status: Option<models::OrganizationStatusType>,
618 use_password_manager: Option<bool>,
619 sm_seats: Option<i32>,
620 sm_service_accounts: Option<i32>,
621 max_autoscale_sm_seats: Option<i32>,
622 max_autoscale_sm_service_accounts: Option<i32>,
623 limit_collection_creation: Option<bool>,
624 limit_collection_deletion: Option<bool>,
625 allow_admin_access_to_all_collection_items: Option<bool>,
626 limit_item_deletion: Option<bool>,
627 use_risk_insights: Option<bool>,
628 use_organization_domains: Option<bool>,
629 use_admin_sponsored_families: Option<bool>,
630 sync_seats: Option<bool>,
631 use_automatic_user_confirmation: Option<bool>,
632 use_phishing_blocker: Option<bool>,
633 tokenized_payment_method_request: Option<models::TokenizedPaymentMethodRequest>,
634 ) -> Result<(), Error<UpdatePaymentMethodError>>;
635}
636
637pub struct OrganizationBillingVNextApiClient {
638 configuration: Arc<configuration::Configuration>,
639}
640
641impl OrganizationBillingVNextApiClient {
642 pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
643 Self { configuration }
644 }
645}
646
647#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
648#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
649impl OrganizationBillingVNextApi for OrganizationBillingVNextApiClient {
650 async fn add_credit_via_bit_pay<'a>(
651 &self,
652 organization_id: &'a str,
653 id: Option<uuid::Uuid>,
654 identifier: Option<&'a str>,
655 name: Option<&'a str>,
656 business_name: Option<&'a str>,
657 business_address1: Option<&'a str>,
658 business_address2: Option<&'a str>,
659 business_address3: Option<&'a str>,
660 business_country: Option<&'a str>,
661 business_tax_number: Option<&'a str>,
662 billing_email: Option<&'a str>,
663 plan: Option<&'a str>,
664 plan_type: Option<models::PlanType>,
665 seats: Option<i32>,
666 max_collections: Option<i32>,
667 use_policies: Option<bool>,
668 use_sso: Option<bool>,
669 use_key_connector: Option<bool>,
670 use_scim: Option<bool>,
671 use_groups: Option<bool>,
672 use_directory: Option<bool>,
673 use_events: Option<bool>,
674 use_totp: Option<bool>,
675 use2fa: Option<bool>,
676 use_api: Option<bool>,
677 use_reset_password: Option<bool>,
678 use_secrets_manager: Option<bool>,
679 self_host: Option<bool>,
680 users_get_premium: Option<bool>,
681 use_custom_permissions: Option<bool>,
682 storage: Option<i64>,
683 max_storage_gb: Option<i32>,
684 gateway: Option<models::GatewayType>,
685 gateway_customer_id: Option<&'a str>,
686 gateway_subscription_id: Option<&'a str>,
687 reference_data: Option<&'a str>,
688 enabled: Option<bool>,
689 license_key: Option<&'a str>,
690 public_key: Option<&'a str>,
691 private_key: Option<&'a str>,
692 two_factor_providers: Option<&'a str>,
693 expiration_date: Option<String>,
694 creation_date: Option<String>,
695 revision_date: Option<String>,
696 max_autoscale_seats: Option<i32>,
697 owners_notified_of_autoscaling: Option<String>,
698 status: Option<models::OrganizationStatusType>,
699 use_password_manager: Option<bool>,
700 sm_seats: Option<i32>,
701 sm_service_accounts: Option<i32>,
702 max_autoscale_sm_seats: Option<i32>,
703 max_autoscale_sm_service_accounts: Option<i32>,
704 limit_collection_creation: Option<bool>,
705 limit_collection_deletion: Option<bool>,
706 allow_admin_access_to_all_collection_items: Option<bool>,
707 limit_item_deletion: Option<bool>,
708 use_risk_insights: Option<bool>,
709 use_organization_domains: Option<bool>,
710 use_admin_sponsored_families: Option<bool>,
711 sync_seats: Option<bool>,
712 use_automatic_user_confirmation: Option<bool>,
713 use_phishing_blocker: Option<bool>,
714 bit_pay_credit_request: Option<models::BitPayCreditRequest>,
715 ) -> Result<(), Error<AddCreditViaBitPayError>> {
716 let local_var_configuration = &self.configuration;
717
718 let local_var_client = &local_var_configuration.client;
719
720 let local_var_uri_str = format!(
721 "{}/organizations/{organizationId}/billing/vnext/credit/bitpay",
722 local_var_configuration.base_path,
723 organizationId = crate::apis::urlencode(organization_id)
724 );
725 let mut local_var_req_builder =
726 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
727
728 if let Some(ref param_value) = id {
729 local_var_req_builder =
730 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
731 }
732 if let Some(ref param_value) = identifier {
733 local_var_req_builder =
734 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
735 }
736 if let Some(ref param_value) = name {
737 local_var_req_builder =
738 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
739 }
740 if let Some(ref param_value) = business_name {
741 local_var_req_builder =
742 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
743 }
744 if let Some(ref param_value) = business_address1 {
745 local_var_req_builder =
746 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
747 }
748 if let Some(ref param_value) = business_address2 {
749 local_var_req_builder =
750 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
751 }
752 if let Some(ref param_value) = business_address3 {
753 local_var_req_builder =
754 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
755 }
756 if let Some(ref param_value) = business_country {
757 local_var_req_builder =
758 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
759 }
760 if let Some(ref param_value) = business_tax_number {
761 local_var_req_builder =
762 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
763 }
764 if let Some(ref param_value) = billing_email {
765 local_var_req_builder =
766 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
767 }
768 if let Some(ref param_value) = plan {
769 local_var_req_builder =
770 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
771 }
772 if let Some(ref param_value) = plan_type {
773 local_var_req_builder =
774 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
775 }
776 if let Some(ref param_value) = seats {
777 local_var_req_builder =
778 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
779 }
780 if let Some(ref param_value) = max_collections {
781 local_var_req_builder =
782 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
783 }
784 if let Some(ref param_value) = use_policies {
785 local_var_req_builder =
786 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
787 }
788 if let Some(ref param_value) = use_sso {
789 local_var_req_builder =
790 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
791 }
792 if let Some(ref param_value) = use_key_connector {
793 local_var_req_builder =
794 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
795 }
796 if let Some(ref param_value) = use_scim {
797 local_var_req_builder =
798 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
799 }
800 if let Some(ref param_value) = use_groups {
801 local_var_req_builder =
802 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
803 }
804 if let Some(ref param_value) = use_directory {
805 local_var_req_builder =
806 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
807 }
808 if let Some(ref param_value) = use_events {
809 local_var_req_builder =
810 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
811 }
812 if let Some(ref param_value) = use_totp {
813 local_var_req_builder =
814 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
815 }
816 if let Some(ref param_value) = use2fa {
817 local_var_req_builder =
818 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
819 }
820 if let Some(ref param_value) = use_api {
821 local_var_req_builder =
822 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
823 }
824 if let Some(ref param_value) = use_reset_password {
825 local_var_req_builder =
826 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
827 }
828 if let Some(ref param_value) = use_secrets_manager {
829 local_var_req_builder =
830 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
831 }
832 if let Some(ref param_value) = self_host {
833 local_var_req_builder =
834 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
835 }
836 if let Some(ref param_value) = users_get_premium {
837 local_var_req_builder =
838 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
839 }
840 if let Some(ref param_value) = use_custom_permissions {
841 local_var_req_builder =
842 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
843 }
844 if let Some(ref param_value) = storage {
845 local_var_req_builder =
846 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
847 }
848 if let Some(ref param_value) = max_storage_gb {
849 local_var_req_builder =
850 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
851 }
852 if let Some(ref param_value) = gateway {
853 local_var_req_builder =
854 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
855 }
856 if let Some(ref param_value) = gateway_customer_id {
857 local_var_req_builder =
858 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
859 }
860 if let Some(ref param_value) = gateway_subscription_id {
861 local_var_req_builder =
862 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
863 }
864 if let Some(ref param_value) = reference_data {
865 local_var_req_builder =
866 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
867 }
868 if let Some(ref param_value) = enabled {
869 local_var_req_builder =
870 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
871 }
872 if let Some(ref param_value) = license_key {
873 local_var_req_builder =
874 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
875 }
876 if let Some(ref param_value) = public_key {
877 local_var_req_builder =
878 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
879 }
880 if let Some(ref param_value) = private_key {
881 local_var_req_builder =
882 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
883 }
884 if let Some(ref param_value) = two_factor_providers {
885 local_var_req_builder =
886 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
887 }
888 if let Some(ref param_value) = expiration_date {
889 local_var_req_builder =
890 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
891 }
892 if let Some(ref param_value) = creation_date {
893 local_var_req_builder =
894 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
895 }
896 if let Some(ref param_value) = revision_date {
897 local_var_req_builder =
898 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
899 }
900 if let Some(ref param_value) = max_autoscale_seats {
901 local_var_req_builder =
902 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
903 }
904 if let Some(ref param_value) = owners_notified_of_autoscaling {
905 local_var_req_builder = local_var_req_builder
906 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
907 }
908 if let Some(ref param_value) = status {
909 local_var_req_builder =
910 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
911 }
912 if let Some(ref param_value) = use_password_manager {
913 local_var_req_builder =
914 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
915 }
916 if let Some(ref param_value) = sm_seats {
917 local_var_req_builder =
918 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
919 }
920 if let Some(ref param_value) = sm_service_accounts {
921 local_var_req_builder =
922 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
923 }
924 if let Some(ref param_value) = max_autoscale_sm_seats {
925 local_var_req_builder =
926 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
927 }
928 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
929 local_var_req_builder = local_var_req_builder
930 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
931 }
932 if let Some(ref param_value) = limit_collection_creation {
933 local_var_req_builder = local_var_req_builder
934 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
935 }
936 if let Some(ref param_value) = limit_collection_deletion {
937 local_var_req_builder = local_var_req_builder
938 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
939 }
940 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
941 local_var_req_builder = local_var_req_builder.query(&[(
942 "allowAdminAccessToAllCollectionItems",
943 ¶m_value.to_string(),
944 )]);
945 }
946 if let Some(ref param_value) = limit_item_deletion {
947 local_var_req_builder =
948 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
949 }
950 if let Some(ref param_value) = use_risk_insights {
951 local_var_req_builder =
952 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
953 }
954 if let Some(ref param_value) = use_organization_domains {
955 local_var_req_builder = local_var_req_builder
956 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
957 }
958 if let Some(ref param_value) = use_admin_sponsored_families {
959 local_var_req_builder = local_var_req_builder
960 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
961 }
962 if let Some(ref param_value) = sync_seats {
963 local_var_req_builder =
964 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
965 }
966 if let Some(ref param_value) = use_automatic_user_confirmation {
967 local_var_req_builder = local_var_req_builder
968 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
969 }
970 if let Some(ref param_value) = use_phishing_blocker {
971 local_var_req_builder =
972 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
973 }
974 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
975 local_var_req_builder = local_var_req_builder
976 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
977 }
978 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
979 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
980 };
981 local_var_req_builder = local_var_req_builder.json(&bit_pay_credit_request);
982
983 let local_var_req = local_var_req_builder.build()?;
984 let local_var_resp = local_var_client.execute(local_var_req).await?;
985
986 let local_var_status = local_var_resp.status();
987 let local_var_content = local_var_resp.text().await?;
988
989 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
990 Ok(())
991 } else {
992 let local_var_entity: Option<AddCreditViaBitPayError> =
993 serde_json::from_str(&local_var_content).ok();
994 let local_var_error = ResponseContent {
995 status: local_var_status,
996 content: local_var_content,
997 entity: local_var_entity,
998 };
999 Err(Error::ResponseError(local_var_error))
1000 }
1001 }
1002
1003 async fn get_billing_address<'a>(
1004 &self,
1005 organization_id: &'a str,
1006 id: Option<uuid::Uuid>,
1007 identifier: Option<&'a str>,
1008 name: Option<&'a str>,
1009 business_name: Option<&'a str>,
1010 business_address1: Option<&'a str>,
1011 business_address2: Option<&'a str>,
1012 business_address3: Option<&'a str>,
1013 business_country: Option<&'a str>,
1014 business_tax_number: Option<&'a str>,
1015 billing_email: Option<&'a str>,
1016 plan: Option<&'a str>,
1017 plan_type: Option<models::PlanType>,
1018 seats: Option<i32>,
1019 max_collections: Option<i32>,
1020 use_policies: Option<bool>,
1021 use_sso: Option<bool>,
1022 use_key_connector: Option<bool>,
1023 use_scim: Option<bool>,
1024 use_groups: Option<bool>,
1025 use_directory: Option<bool>,
1026 use_events: Option<bool>,
1027 use_totp: Option<bool>,
1028 use2fa: Option<bool>,
1029 use_api: Option<bool>,
1030 use_reset_password: Option<bool>,
1031 use_secrets_manager: Option<bool>,
1032 self_host: Option<bool>,
1033 users_get_premium: Option<bool>,
1034 use_custom_permissions: Option<bool>,
1035 storage: Option<i64>,
1036 max_storage_gb: Option<i32>,
1037 gateway: Option<models::GatewayType>,
1038 gateway_customer_id: Option<&'a str>,
1039 gateway_subscription_id: Option<&'a str>,
1040 reference_data: Option<&'a str>,
1041 enabled: Option<bool>,
1042 license_key: Option<&'a str>,
1043 public_key: Option<&'a str>,
1044 private_key: Option<&'a str>,
1045 two_factor_providers: Option<&'a str>,
1046 expiration_date: Option<String>,
1047 creation_date: Option<String>,
1048 revision_date: Option<String>,
1049 max_autoscale_seats: Option<i32>,
1050 owners_notified_of_autoscaling: Option<String>,
1051 status: Option<models::OrganizationStatusType>,
1052 use_password_manager: Option<bool>,
1053 sm_seats: Option<i32>,
1054 sm_service_accounts: Option<i32>,
1055 max_autoscale_sm_seats: Option<i32>,
1056 max_autoscale_sm_service_accounts: Option<i32>,
1057 limit_collection_creation: Option<bool>,
1058 limit_collection_deletion: Option<bool>,
1059 allow_admin_access_to_all_collection_items: Option<bool>,
1060 limit_item_deletion: Option<bool>,
1061 use_risk_insights: Option<bool>,
1062 use_organization_domains: Option<bool>,
1063 use_admin_sponsored_families: Option<bool>,
1064 sync_seats: Option<bool>,
1065 use_automatic_user_confirmation: Option<bool>,
1066 use_phishing_blocker: Option<bool>,
1067 ) -> Result<(), Error<GetBillingAddressError>> {
1068 let local_var_configuration = &self.configuration;
1069
1070 let local_var_client = &local_var_configuration.client;
1071
1072 let local_var_uri_str = format!(
1073 "{}/organizations/{organizationId}/billing/vnext/address",
1074 local_var_configuration.base_path,
1075 organizationId = crate::apis::urlencode(organization_id)
1076 );
1077 let mut local_var_req_builder =
1078 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
1079
1080 if let Some(ref param_value) = id {
1081 local_var_req_builder =
1082 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
1083 }
1084 if let Some(ref param_value) = identifier {
1085 local_var_req_builder =
1086 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
1087 }
1088 if let Some(ref param_value) = name {
1089 local_var_req_builder =
1090 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
1091 }
1092 if let Some(ref param_value) = business_name {
1093 local_var_req_builder =
1094 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
1095 }
1096 if let Some(ref param_value) = business_address1 {
1097 local_var_req_builder =
1098 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
1099 }
1100 if let Some(ref param_value) = business_address2 {
1101 local_var_req_builder =
1102 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
1103 }
1104 if let Some(ref param_value) = business_address3 {
1105 local_var_req_builder =
1106 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
1107 }
1108 if let Some(ref param_value) = business_country {
1109 local_var_req_builder =
1110 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
1111 }
1112 if let Some(ref param_value) = business_tax_number {
1113 local_var_req_builder =
1114 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
1115 }
1116 if let Some(ref param_value) = billing_email {
1117 local_var_req_builder =
1118 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
1119 }
1120 if let Some(ref param_value) = plan {
1121 local_var_req_builder =
1122 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
1123 }
1124 if let Some(ref param_value) = plan_type {
1125 local_var_req_builder =
1126 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
1127 }
1128 if let Some(ref param_value) = seats {
1129 local_var_req_builder =
1130 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
1131 }
1132 if let Some(ref param_value) = max_collections {
1133 local_var_req_builder =
1134 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
1135 }
1136 if let Some(ref param_value) = use_policies {
1137 local_var_req_builder =
1138 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
1139 }
1140 if let Some(ref param_value) = use_sso {
1141 local_var_req_builder =
1142 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
1143 }
1144 if let Some(ref param_value) = use_key_connector {
1145 local_var_req_builder =
1146 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
1147 }
1148 if let Some(ref param_value) = use_scim {
1149 local_var_req_builder =
1150 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
1151 }
1152 if let Some(ref param_value) = use_groups {
1153 local_var_req_builder =
1154 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
1155 }
1156 if let Some(ref param_value) = use_directory {
1157 local_var_req_builder =
1158 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
1159 }
1160 if let Some(ref param_value) = use_events {
1161 local_var_req_builder =
1162 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
1163 }
1164 if let Some(ref param_value) = use_totp {
1165 local_var_req_builder =
1166 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
1167 }
1168 if let Some(ref param_value) = use2fa {
1169 local_var_req_builder =
1170 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
1171 }
1172 if let Some(ref param_value) = use_api {
1173 local_var_req_builder =
1174 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
1175 }
1176 if let Some(ref param_value) = use_reset_password {
1177 local_var_req_builder =
1178 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
1179 }
1180 if let Some(ref param_value) = use_secrets_manager {
1181 local_var_req_builder =
1182 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
1183 }
1184 if let Some(ref param_value) = self_host {
1185 local_var_req_builder =
1186 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
1187 }
1188 if let Some(ref param_value) = users_get_premium {
1189 local_var_req_builder =
1190 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
1191 }
1192 if let Some(ref param_value) = use_custom_permissions {
1193 local_var_req_builder =
1194 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
1195 }
1196 if let Some(ref param_value) = storage {
1197 local_var_req_builder =
1198 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
1199 }
1200 if let Some(ref param_value) = max_storage_gb {
1201 local_var_req_builder =
1202 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
1203 }
1204 if let Some(ref param_value) = gateway {
1205 local_var_req_builder =
1206 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
1207 }
1208 if let Some(ref param_value) = gateway_customer_id {
1209 local_var_req_builder =
1210 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
1211 }
1212 if let Some(ref param_value) = gateway_subscription_id {
1213 local_var_req_builder =
1214 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
1215 }
1216 if let Some(ref param_value) = reference_data {
1217 local_var_req_builder =
1218 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
1219 }
1220 if let Some(ref param_value) = enabled {
1221 local_var_req_builder =
1222 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
1223 }
1224 if let Some(ref param_value) = license_key {
1225 local_var_req_builder =
1226 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
1227 }
1228 if let Some(ref param_value) = public_key {
1229 local_var_req_builder =
1230 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
1231 }
1232 if let Some(ref param_value) = private_key {
1233 local_var_req_builder =
1234 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
1235 }
1236 if let Some(ref param_value) = two_factor_providers {
1237 local_var_req_builder =
1238 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
1239 }
1240 if let Some(ref param_value) = expiration_date {
1241 local_var_req_builder =
1242 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
1243 }
1244 if let Some(ref param_value) = creation_date {
1245 local_var_req_builder =
1246 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
1247 }
1248 if let Some(ref param_value) = revision_date {
1249 local_var_req_builder =
1250 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
1251 }
1252 if let Some(ref param_value) = max_autoscale_seats {
1253 local_var_req_builder =
1254 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
1255 }
1256 if let Some(ref param_value) = owners_notified_of_autoscaling {
1257 local_var_req_builder = local_var_req_builder
1258 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
1259 }
1260 if let Some(ref param_value) = status {
1261 local_var_req_builder =
1262 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
1263 }
1264 if let Some(ref param_value) = use_password_manager {
1265 local_var_req_builder =
1266 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
1267 }
1268 if let Some(ref param_value) = sm_seats {
1269 local_var_req_builder =
1270 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
1271 }
1272 if let Some(ref param_value) = sm_service_accounts {
1273 local_var_req_builder =
1274 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
1275 }
1276 if let Some(ref param_value) = max_autoscale_sm_seats {
1277 local_var_req_builder =
1278 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
1279 }
1280 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
1281 local_var_req_builder = local_var_req_builder
1282 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
1283 }
1284 if let Some(ref param_value) = limit_collection_creation {
1285 local_var_req_builder = local_var_req_builder
1286 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
1287 }
1288 if let Some(ref param_value) = limit_collection_deletion {
1289 local_var_req_builder = local_var_req_builder
1290 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
1291 }
1292 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
1293 local_var_req_builder = local_var_req_builder.query(&[(
1294 "allowAdminAccessToAllCollectionItems",
1295 ¶m_value.to_string(),
1296 )]);
1297 }
1298 if let Some(ref param_value) = limit_item_deletion {
1299 local_var_req_builder =
1300 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
1301 }
1302 if let Some(ref param_value) = use_risk_insights {
1303 local_var_req_builder =
1304 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
1305 }
1306 if let Some(ref param_value) = use_organization_domains {
1307 local_var_req_builder = local_var_req_builder
1308 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
1309 }
1310 if let Some(ref param_value) = use_admin_sponsored_families {
1311 local_var_req_builder = local_var_req_builder
1312 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
1313 }
1314 if let Some(ref param_value) = sync_seats {
1315 local_var_req_builder =
1316 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
1317 }
1318 if let Some(ref param_value) = use_automatic_user_confirmation {
1319 local_var_req_builder = local_var_req_builder
1320 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
1321 }
1322 if let Some(ref param_value) = use_phishing_blocker {
1323 local_var_req_builder =
1324 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
1325 }
1326 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1327 local_var_req_builder = local_var_req_builder
1328 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1329 }
1330 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1331 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1332 };
1333
1334 let local_var_req = local_var_req_builder.build()?;
1335 let local_var_resp = local_var_client.execute(local_var_req).await?;
1336
1337 let local_var_status = local_var_resp.status();
1338 let local_var_content = local_var_resp.text().await?;
1339
1340 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1341 Ok(())
1342 } else {
1343 let local_var_entity: Option<GetBillingAddressError> =
1344 serde_json::from_str(&local_var_content).ok();
1345 let local_var_error = ResponseContent {
1346 status: local_var_status,
1347 content: local_var_content,
1348 entity: local_var_entity,
1349 };
1350 Err(Error::ResponseError(local_var_error))
1351 }
1352 }
1353
1354 async fn get_credit<'a>(
1355 &self,
1356 organization_id: &'a str,
1357 id: Option<uuid::Uuid>,
1358 identifier: Option<&'a str>,
1359 name: Option<&'a str>,
1360 business_name: Option<&'a str>,
1361 business_address1: Option<&'a str>,
1362 business_address2: Option<&'a str>,
1363 business_address3: Option<&'a str>,
1364 business_country: Option<&'a str>,
1365 business_tax_number: Option<&'a str>,
1366 billing_email: Option<&'a str>,
1367 plan: Option<&'a str>,
1368 plan_type: Option<models::PlanType>,
1369 seats: Option<i32>,
1370 max_collections: Option<i32>,
1371 use_policies: Option<bool>,
1372 use_sso: Option<bool>,
1373 use_key_connector: Option<bool>,
1374 use_scim: Option<bool>,
1375 use_groups: Option<bool>,
1376 use_directory: Option<bool>,
1377 use_events: Option<bool>,
1378 use_totp: Option<bool>,
1379 use2fa: Option<bool>,
1380 use_api: Option<bool>,
1381 use_reset_password: Option<bool>,
1382 use_secrets_manager: Option<bool>,
1383 self_host: Option<bool>,
1384 users_get_premium: Option<bool>,
1385 use_custom_permissions: Option<bool>,
1386 storage: Option<i64>,
1387 max_storage_gb: Option<i32>,
1388 gateway: Option<models::GatewayType>,
1389 gateway_customer_id: Option<&'a str>,
1390 gateway_subscription_id: Option<&'a str>,
1391 reference_data: Option<&'a str>,
1392 enabled: Option<bool>,
1393 license_key: Option<&'a str>,
1394 public_key: Option<&'a str>,
1395 private_key: Option<&'a str>,
1396 two_factor_providers: Option<&'a str>,
1397 expiration_date: Option<String>,
1398 creation_date: Option<String>,
1399 revision_date: Option<String>,
1400 max_autoscale_seats: Option<i32>,
1401 owners_notified_of_autoscaling: Option<String>,
1402 status: Option<models::OrganizationStatusType>,
1403 use_password_manager: Option<bool>,
1404 sm_seats: Option<i32>,
1405 sm_service_accounts: Option<i32>,
1406 max_autoscale_sm_seats: Option<i32>,
1407 max_autoscale_sm_service_accounts: Option<i32>,
1408 limit_collection_creation: Option<bool>,
1409 limit_collection_deletion: Option<bool>,
1410 allow_admin_access_to_all_collection_items: Option<bool>,
1411 limit_item_deletion: Option<bool>,
1412 use_risk_insights: Option<bool>,
1413 use_organization_domains: Option<bool>,
1414 use_admin_sponsored_families: Option<bool>,
1415 sync_seats: Option<bool>,
1416 use_automatic_user_confirmation: Option<bool>,
1417 use_phishing_blocker: Option<bool>,
1418 ) -> Result<(), Error<GetCreditError>> {
1419 let local_var_configuration = &self.configuration;
1420
1421 let local_var_client = &local_var_configuration.client;
1422
1423 let local_var_uri_str = format!(
1424 "{}/organizations/{organizationId}/billing/vnext/credit",
1425 local_var_configuration.base_path,
1426 organizationId = crate::apis::urlencode(organization_id)
1427 );
1428 let mut local_var_req_builder =
1429 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
1430
1431 if let Some(ref param_value) = id {
1432 local_var_req_builder =
1433 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
1434 }
1435 if let Some(ref param_value) = identifier {
1436 local_var_req_builder =
1437 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
1438 }
1439 if let Some(ref param_value) = name {
1440 local_var_req_builder =
1441 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
1442 }
1443 if let Some(ref param_value) = business_name {
1444 local_var_req_builder =
1445 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
1446 }
1447 if let Some(ref param_value) = business_address1 {
1448 local_var_req_builder =
1449 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
1450 }
1451 if let Some(ref param_value) = business_address2 {
1452 local_var_req_builder =
1453 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
1454 }
1455 if let Some(ref param_value) = business_address3 {
1456 local_var_req_builder =
1457 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
1458 }
1459 if let Some(ref param_value) = business_country {
1460 local_var_req_builder =
1461 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
1462 }
1463 if let Some(ref param_value) = business_tax_number {
1464 local_var_req_builder =
1465 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
1466 }
1467 if let Some(ref param_value) = billing_email {
1468 local_var_req_builder =
1469 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
1470 }
1471 if let Some(ref param_value) = plan {
1472 local_var_req_builder =
1473 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
1474 }
1475 if let Some(ref param_value) = plan_type {
1476 local_var_req_builder =
1477 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
1478 }
1479 if let Some(ref param_value) = seats {
1480 local_var_req_builder =
1481 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
1482 }
1483 if let Some(ref param_value) = max_collections {
1484 local_var_req_builder =
1485 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
1486 }
1487 if let Some(ref param_value) = use_policies {
1488 local_var_req_builder =
1489 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
1490 }
1491 if let Some(ref param_value) = use_sso {
1492 local_var_req_builder =
1493 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
1494 }
1495 if let Some(ref param_value) = use_key_connector {
1496 local_var_req_builder =
1497 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
1498 }
1499 if let Some(ref param_value) = use_scim {
1500 local_var_req_builder =
1501 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
1502 }
1503 if let Some(ref param_value) = use_groups {
1504 local_var_req_builder =
1505 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
1506 }
1507 if let Some(ref param_value) = use_directory {
1508 local_var_req_builder =
1509 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
1510 }
1511 if let Some(ref param_value) = use_events {
1512 local_var_req_builder =
1513 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
1514 }
1515 if let Some(ref param_value) = use_totp {
1516 local_var_req_builder =
1517 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
1518 }
1519 if let Some(ref param_value) = use2fa {
1520 local_var_req_builder =
1521 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
1522 }
1523 if let Some(ref param_value) = use_api {
1524 local_var_req_builder =
1525 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
1526 }
1527 if let Some(ref param_value) = use_reset_password {
1528 local_var_req_builder =
1529 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
1530 }
1531 if let Some(ref param_value) = use_secrets_manager {
1532 local_var_req_builder =
1533 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
1534 }
1535 if let Some(ref param_value) = self_host {
1536 local_var_req_builder =
1537 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
1538 }
1539 if let Some(ref param_value) = users_get_premium {
1540 local_var_req_builder =
1541 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
1542 }
1543 if let Some(ref param_value) = use_custom_permissions {
1544 local_var_req_builder =
1545 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
1546 }
1547 if let Some(ref param_value) = storage {
1548 local_var_req_builder =
1549 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
1550 }
1551 if let Some(ref param_value) = max_storage_gb {
1552 local_var_req_builder =
1553 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
1554 }
1555 if let Some(ref param_value) = gateway {
1556 local_var_req_builder =
1557 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
1558 }
1559 if let Some(ref param_value) = gateway_customer_id {
1560 local_var_req_builder =
1561 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
1562 }
1563 if let Some(ref param_value) = gateway_subscription_id {
1564 local_var_req_builder =
1565 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
1566 }
1567 if let Some(ref param_value) = reference_data {
1568 local_var_req_builder =
1569 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
1570 }
1571 if let Some(ref param_value) = enabled {
1572 local_var_req_builder =
1573 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
1574 }
1575 if let Some(ref param_value) = license_key {
1576 local_var_req_builder =
1577 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
1578 }
1579 if let Some(ref param_value) = public_key {
1580 local_var_req_builder =
1581 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
1582 }
1583 if let Some(ref param_value) = private_key {
1584 local_var_req_builder =
1585 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
1586 }
1587 if let Some(ref param_value) = two_factor_providers {
1588 local_var_req_builder =
1589 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
1590 }
1591 if let Some(ref param_value) = expiration_date {
1592 local_var_req_builder =
1593 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
1594 }
1595 if let Some(ref param_value) = creation_date {
1596 local_var_req_builder =
1597 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
1598 }
1599 if let Some(ref param_value) = revision_date {
1600 local_var_req_builder =
1601 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
1602 }
1603 if let Some(ref param_value) = max_autoscale_seats {
1604 local_var_req_builder =
1605 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
1606 }
1607 if let Some(ref param_value) = owners_notified_of_autoscaling {
1608 local_var_req_builder = local_var_req_builder
1609 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
1610 }
1611 if let Some(ref param_value) = status {
1612 local_var_req_builder =
1613 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
1614 }
1615 if let Some(ref param_value) = use_password_manager {
1616 local_var_req_builder =
1617 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
1618 }
1619 if let Some(ref param_value) = sm_seats {
1620 local_var_req_builder =
1621 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
1622 }
1623 if let Some(ref param_value) = sm_service_accounts {
1624 local_var_req_builder =
1625 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
1626 }
1627 if let Some(ref param_value) = max_autoscale_sm_seats {
1628 local_var_req_builder =
1629 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
1630 }
1631 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
1632 local_var_req_builder = local_var_req_builder
1633 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
1634 }
1635 if let Some(ref param_value) = limit_collection_creation {
1636 local_var_req_builder = local_var_req_builder
1637 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
1638 }
1639 if let Some(ref param_value) = limit_collection_deletion {
1640 local_var_req_builder = local_var_req_builder
1641 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
1642 }
1643 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
1644 local_var_req_builder = local_var_req_builder.query(&[(
1645 "allowAdminAccessToAllCollectionItems",
1646 ¶m_value.to_string(),
1647 )]);
1648 }
1649 if let Some(ref param_value) = limit_item_deletion {
1650 local_var_req_builder =
1651 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
1652 }
1653 if let Some(ref param_value) = use_risk_insights {
1654 local_var_req_builder =
1655 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
1656 }
1657 if let Some(ref param_value) = use_organization_domains {
1658 local_var_req_builder = local_var_req_builder
1659 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
1660 }
1661 if let Some(ref param_value) = use_admin_sponsored_families {
1662 local_var_req_builder = local_var_req_builder
1663 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
1664 }
1665 if let Some(ref param_value) = sync_seats {
1666 local_var_req_builder =
1667 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
1668 }
1669 if let Some(ref param_value) = use_automatic_user_confirmation {
1670 local_var_req_builder = local_var_req_builder
1671 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
1672 }
1673 if let Some(ref param_value) = use_phishing_blocker {
1674 local_var_req_builder =
1675 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
1676 }
1677 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1678 local_var_req_builder = local_var_req_builder
1679 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1680 }
1681 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1682 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1683 };
1684
1685 let local_var_req = local_var_req_builder.build()?;
1686 let local_var_resp = local_var_client.execute(local_var_req).await?;
1687
1688 let local_var_status = local_var_resp.status();
1689 let local_var_content = local_var_resp.text().await?;
1690
1691 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1692 Ok(())
1693 } else {
1694 let local_var_entity: Option<GetCreditError> =
1695 serde_json::from_str(&local_var_content).ok();
1696 let local_var_error = ResponseContent {
1697 status: local_var_status,
1698 content: local_var_content,
1699 entity: local_var_entity,
1700 };
1701 Err(Error::ResponseError(local_var_error))
1702 }
1703 }
1704
1705 async fn get_metadata<'a>(
1706 &self,
1707 organization_id: &'a str,
1708 id: Option<uuid::Uuid>,
1709 identifier: Option<&'a str>,
1710 name: Option<&'a str>,
1711 business_name: Option<&'a str>,
1712 business_address1: Option<&'a str>,
1713 business_address2: Option<&'a str>,
1714 business_address3: Option<&'a str>,
1715 business_country: Option<&'a str>,
1716 business_tax_number: Option<&'a str>,
1717 billing_email: Option<&'a str>,
1718 plan: Option<&'a str>,
1719 plan_type: Option<models::PlanType>,
1720 seats: Option<i32>,
1721 max_collections: Option<i32>,
1722 use_policies: Option<bool>,
1723 use_sso: Option<bool>,
1724 use_key_connector: Option<bool>,
1725 use_scim: Option<bool>,
1726 use_groups: Option<bool>,
1727 use_directory: Option<bool>,
1728 use_events: Option<bool>,
1729 use_totp: Option<bool>,
1730 use2fa: Option<bool>,
1731 use_api: Option<bool>,
1732 use_reset_password: Option<bool>,
1733 use_secrets_manager: Option<bool>,
1734 self_host: Option<bool>,
1735 users_get_premium: Option<bool>,
1736 use_custom_permissions: Option<bool>,
1737 storage: Option<i64>,
1738 max_storage_gb: Option<i32>,
1739 gateway: Option<models::GatewayType>,
1740 gateway_customer_id: Option<&'a str>,
1741 gateway_subscription_id: Option<&'a str>,
1742 reference_data: Option<&'a str>,
1743 enabled: Option<bool>,
1744 license_key: Option<&'a str>,
1745 public_key: Option<&'a str>,
1746 private_key: Option<&'a str>,
1747 two_factor_providers: Option<&'a str>,
1748 expiration_date: Option<String>,
1749 creation_date: Option<String>,
1750 revision_date: Option<String>,
1751 max_autoscale_seats: Option<i32>,
1752 owners_notified_of_autoscaling: Option<String>,
1753 status: Option<models::OrganizationStatusType>,
1754 use_password_manager: Option<bool>,
1755 sm_seats: Option<i32>,
1756 sm_service_accounts: Option<i32>,
1757 max_autoscale_sm_seats: Option<i32>,
1758 max_autoscale_sm_service_accounts: Option<i32>,
1759 limit_collection_creation: Option<bool>,
1760 limit_collection_deletion: Option<bool>,
1761 allow_admin_access_to_all_collection_items: Option<bool>,
1762 limit_item_deletion: Option<bool>,
1763 use_risk_insights: Option<bool>,
1764 use_organization_domains: Option<bool>,
1765 use_admin_sponsored_families: Option<bool>,
1766 sync_seats: Option<bool>,
1767 use_automatic_user_confirmation: Option<bool>,
1768 use_phishing_blocker: Option<bool>,
1769 ) -> Result<(), Error<GetMetadataError>> {
1770 let local_var_configuration = &self.configuration;
1771
1772 let local_var_client = &local_var_configuration.client;
1773
1774 let local_var_uri_str = format!(
1775 "{}/organizations/{organizationId}/billing/vnext/metadata",
1776 local_var_configuration.base_path,
1777 organizationId = crate::apis::urlencode(organization_id)
1778 );
1779 let mut local_var_req_builder =
1780 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
1781
1782 if let Some(ref param_value) = id {
1783 local_var_req_builder =
1784 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
1785 }
1786 if let Some(ref param_value) = identifier {
1787 local_var_req_builder =
1788 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
1789 }
1790 if let Some(ref param_value) = name {
1791 local_var_req_builder =
1792 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
1793 }
1794 if let Some(ref param_value) = business_name {
1795 local_var_req_builder =
1796 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
1797 }
1798 if let Some(ref param_value) = business_address1 {
1799 local_var_req_builder =
1800 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
1801 }
1802 if let Some(ref param_value) = business_address2 {
1803 local_var_req_builder =
1804 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
1805 }
1806 if let Some(ref param_value) = business_address3 {
1807 local_var_req_builder =
1808 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
1809 }
1810 if let Some(ref param_value) = business_country {
1811 local_var_req_builder =
1812 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
1813 }
1814 if let Some(ref param_value) = business_tax_number {
1815 local_var_req_builder =
1816 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
1817 }
1818 if let Some(ref param_value) = billing_email {
1819 local_var_req_builder =
1820 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
1821 }
1822 if let Some(ref param_value) = plan {
1823 local_var_req_builder =
1824 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
1825 }
1826 if let Some(ref param_value) = plan_type {
1827 local_var_req_builder =
1828 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
1829 }
1830 if let Some(ref param_value) = seats {
1831 local_var_req_builder =
1832 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
1833 }
1834 if let Some(ref param_value) = max_collections {
1835 local_var_req_builder =
1836 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
1837 }
1838 if let Some(ref param_value) = use_policies {
1839 local_var_req_builder =
1840 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
1841 }
1842 if let Some(ref param_value) = use_sso {
1843 local_var_req_builder =
1844 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
1845 }
1846 if let Some(ref param_value) = use_key_connector {
1847 local_var_req_builder =
1848 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
1849 }
1850 if let Some(ref param_value) = use_scim {
1851 local_var_req_builder =
1852 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
1853 }
1854 if let Some(ref param_value) = use_groups {
1855 local_var_req_builder =
1856 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
1857 }
1858 if let Some(ref param_value) = use_directory {
1859 local_var_req_builder =
1860 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
1861 }
1862 if let Some(ref param_value) = use_events {
1863 local_var_req_builder =
1864 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
1865 }
1866 if let Some(ref param_value) = use_totp {
1867 local_var_req_builder =
1868 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
1869 }
1870 if let Some(ref param_value) = use2fa {
1871 local_var_req_builder =
1872 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
1873 }
1874 if let Some(ref param_value) = use_api {
1875 local_var_req_builder =
1876 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
1877 }
1878 if let Some(ref param_value) = use_reset_password {
1879 local_var_req_builder =
1880 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
1881 }
1882 if let Some(ref param_value) = use_secrets_manager {
1883 local_var_req_builder =
1884 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
1885 }
1886 if let Some(ref param_value) = self_host {
1887 local_var_req_builder =
1888 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
1889 }
1890 if let Some(ref param_value) = users_get_premium {
1891 local_var_req_builder =
1892 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
1893 }
1894 if let Some(ref param_value) = use_custom_permissions {
1895 local_var_req_builder =
1896 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
1897 }
1898 if let Some(ref param_value) = storage {
1899 local_var_req_builder =
1900 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
1901 }
1902 if let Some(ref param_value) = max_storage_gb {
1903 local_var_req_builder =
1904 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
1905 }
1906 if let Some(ref param_value) = gateway {
1907 local_var_req_builder =
1908 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
1909 }
1910 if let Some(ref param_value) = gateway_customer_id {
1911 local_var_req_builder =
1912 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
1913 }
1914 if let Some(ref param_value) = gateway_subscription_id {
1915 local_var_req_builder =
1916 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
1917 }
1918 if let Some(ref param_value) = reference_data {
1919 local_var_req_builder =
1920 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
1921 }
1922 if let Some(ref param_value) = enabled {
1923 local_var_req_builder =
1924 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
1925 }
1926 if let Some(ref param_value) = license_key {
1927 local_var_req_builder =
1928 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
1929 }
1930 if let Some(ref param_value) = public_key {
1931 local_var_req_builder =
1932 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
1933 }
1934 if let Some(ref param_value) = private_key {
1935 local_var_req_builder =
1936 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
1937 }
1938 if let Some(ref param_value) = two_factor_providers {
1939 local_var_req_builder =
1940 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
1941 }
1942 if let Some(ref param_value) = expiration_date {
1943 local_var_req_builder =
1944 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
1945 }
1946 if let Some(ref param_value) = creation_date {
1947 local_var_req_builder =
1948 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
1949 }
1950 if let Some(ref param_value) = revision_date {
1951 local_var_req_builder =
1952 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
1953 }
1954 if let Some(ref param_value) = max_autoscale_seats {
1955 local_var_req_builder =
1956 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
1957 }
1958 if let Some(ref param_value) = owners_notified_of_autoscaling {
1959 local_var_req_builder = local_var_req_builder
1960 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
1961 }
1962 if let Some(ref param_value) = status {
1963 local_var_req_builder =
1964 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
1965 }
1966 if let Some(ref param_value) = use_password_manager {
1967 local_var_req_builder =
1968 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
1969 }
1970 if let Some(ref param_value) = sm_seats {
1971 local_var_req_builder =
1972 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
1973 }
1974 if let Some(ref param_value) = sm_service_accounts {
1975 local_var_req_builder =
1976 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
1977 }
1978 if let Some(ref param_value) = max_autoscale_sm_seats {
1979 local_var_req_builder =
1980 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
1981 }
1982 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
1983 local_var_req_builder = local_var_req_builder
1984 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
1985 }
1986 if let Some(ref param_value) = limit_collection_creation {
1987 local_var_req_builder = local_var_req_builder
1988 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
1989 }
1990 if let Some(ref param_value) = limit_collection_deletion {
1991 local_var_req_builder = local_var_req_builder
1992 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
1993 }
1994 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
1995 local_var_req_builder = local_var_req_builder.query(&[(
1996 "allowAdminAccessToAllCollectionItems",
1997 ¶m_value.to_string(),
1998 )]);
1999 }
2000 if let Some(ref param_value) = limit_item_deletion {
2001 local_var_req_builder =
2002 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
2003 }
2004 if let Some(ref param_value) = use_risk_insights {
2005 local_var_req_builder =
2006 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
2007 }
2008 if let Some(ref param_value) = use_organization_domains {
2009 local_var_req_builder = local_var_req_builder
2010 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
2011 }
2012 if let Some(ref param_value) = use_admin_sponsored_families {
2013 local_var_req_builder = local_var_req_builder
2014 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
2015 }
2016 if let Some(ref param_value) = sync_seats {
2017 local_var_req_builder =
2018 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
2019 }
2020 if let Some(ref param_value) = use_automatic_user_confirmation {
2021 local_var_req_builder = local_var_req_builder
2022 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
2023 }
2024 if let Some(ref param_value) = use_phishing_blocker {
2025 local_var_req_builder =
2026 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
2027 }
2028 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
2029 local_var_req_builder = local_var_req_builder
2030 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
2031 }
2032 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
2033 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
2034 };
2035
2036 let local_var_req = local_var_req_builder.build()?;
2037 let local_var_resp = local_var_client.execute(local_var_req).await?;
2038
2039 let local_var_status = local_var_resp.status();
2040 let local_var_content = local_var_resp.text().await?;
2041
2042 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
2043 Ok(())
2044 } else {
2045 let local_var_entity: Option<GetMetadataError> =
2046 serde_json::from_str(&local_var_content).ok();
2047 let local_var_error = ResponseContent {
2048 status: local_var_status,
2049 content: local_var_content,
2050 entity: local_var_entity,
2051 };
2052 Err(Error::ResponseError(local_var_error))
2053 }
2054 }
2055
2056 async fn get_payment_method<'a>(
2057 &self,
2058 organization_id: &'a str,
2059 id: Option<uuid::Uuid>,
2060 identifier: Option<&'a str>,
2061 name: Option<&'a str>,
2062 business_name: Option<&'a str>,
2063 business_address1: Option<&'a str>,
2064 business_address2: Option<&'a str>,
2065 business_address3: Option<&'a str>,
2066 business_country: Option<&'a str>,
2067 business_tax_number: Option<&'a str>,
2068 billing_email: Option<&'a str>,
2069 plan: Option<&'a str>,
2070 plan_type: Option<models::PlanType>,
2071 seats: Option<i32>,
2072 max_collections: Option<i32>,
2073 use_policies: Option<bool>,
2074 use_sso: Option<bool>,
2075 use_key_connector: Option<bool>,
2076 use_scim: Option<bool>,
2077 use_groups: Option<bool>,
2078 use_directory: Option<bool>,
2079 use_events: Option<bool>,
2080 use_totp: Option<bool>,
2081 use2fa: Option<bool>,
2082 use_api: Option<bool>,
2083 use_reset_password: Option<bool>,
2084 use_secrets_manager: Option<bool>,
2085 self_host: Option<bool>,
2086 users_get_premium: Option<bool>,
2087 use_custom_permissions: Option<bool>,
2088 storage: Option<i64>,
2089 max_storage_gb: Option<i32>,
2090 gateway: Option<models::GatewayType>,
2091 gateway_customer_id: Option<&'a str>,
2092 gateway_subscription_id: Option<&'a str>,
2093 reference_data: Option<&'a str>,
2094 enabled: Option<bool>,
2095 license_key: Option<&'a str>,
2096 public_key: Option<&'a str>,
2097 private_key: Option<&'a str>,
2098 two_factor_providers: Option<&'a str>,
2099 expiration_date: Option<String>,
2100 creation_date: Option<String>,
2101 revision_date: Option<String>,
2102 max_autoscale_seats: Option<i32>,
2103 owners_notified_of_autoscaling: Option<String>,
2104 status: Option<models::OrganizationStatusType>,
2105 use_password_manager: Option<bool>,
2106 sm_seats: Option<i32>,
2107 sm_service_accounts: Option<i32>,
2108 max_autoscale_sm_seats: Option<i32>,
2109 max_autoscale_sm_service_accounts: Option<i32>,
2110 limit_collection_creation: Option<bool>,
2111 limit_collection_deletion: Option<bool>,
2112 allow_admin_access_to_all_collection_items: Option<bool>,
2113 limit_item_deletion: Option<bool>,
2114 use_risk_insights: Option<bool>,
2115 use_organization_domains: Option<bool>,
2116 use_admin_sponsored_families: Option<bool>,
2117 sync_seats: Option<bool>,
2118 use_automatic_user_confirmation: Option<bool>,
2119 use_phishing_blocker: Option<bool>,
2120 ) -> Result<(), Error<GetPaymentMethodError>> {
2121 let local_var_configuration = &self.configuration;
2122
2123 let local_var_client = &local_var_configuration.client;
2124
2125 let local_var_uri_str = format!(
2126 "{}/organizations/{organizationId}/billing/vnext/payment-method",
2127 local_var_configuration.base_path,
2128 organizationId = crate::apis::urlencode(organization_id)
2129 );
2130 let mut local_var_req_builder =
2131 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
2132
2133 if let Some(ref param_value) = id {
2134 local_var_req_builder =
2135 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
2136 }
2137 if let Some(ref param_value) = identifier {
2138 local_var_req_builder =
2139 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
2140 }
2141 if let Some(ref param_value) = name {
2142 local_var_req_builder =
2143 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
2144 }
2145 if let Some(ref param_value) = business_name {
2146 local_var_req_builder =
2147 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
2148 }
2149 if let Some(ref param_value) = business_address1 {
2150 local_var_req_builder =
2151 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
2152 }
2153 if let Some(ref param_value) = business_address2 {
2154 local_var_req_builder =
2155 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
2156 }
2157 if let Some(ref param_value) = business_address3 {
2158 local_var_req_builder =
2159 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
2160 }
2161 if let Some(ref param_value) = business_country {
2162 local_var_req_builder =
2163 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
2164 }
2165 if let Some(ref param_value) = business_tax_number {
2166 local_var_req_builder =
2167 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
2168 }
2169 if let Some(ref param_value) = billing_email {
2170 local_var_req_builder =
2171 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
2172 }
2173 if let Some(ref param_value) = plan {
2174 local_var_req_builder =
2175 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
2176 }
2177 if let Some(ref param_value) = plan_type {
2178 local_var_req_builder =
2179 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
2180 }
2181 if let Some(ref param_value) = seats {
2182 local_var_req_builder =
2183 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
2184 }
2185 if let Some(ref param_value) = max_collections {
2186 local_var_req_builder =
2187 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
2188 }
2189 if let Some(ref param_value) = use_policies {
2190 local_var_req_builder =
2191 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
2192 }
2193 if let Some(ref param_value) = use_sso {
2194 local_var_req_builder =
2195 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
2196 }
2197 if let Some(ref param_value) = use_key_connector {
2198 local_var_req_builder =
2199 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
2200 }
2201 if let Some(ref param_value) = use_scim {
2202 local_var_req_builder =
2203 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
2204 }
2205 if let Some(ref param_value) = use_groups {
2206 local_var_req_builder =
2207 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
2208 }
2209 if let Some(ref param_value) = use_directory {
2210 local_var_req_builder =
2211 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
2212 }
2213 if let Some(ref param_value) = use_events {
2214 local_var_req_builder =
2215 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
2216 }
2217 if let Some(ref param_value) = use_totp {
2218 local_var_req_builder =
2219 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
2220 }
2221 if let Some(ref param_value) = use2fa {
2222 local_var_req_builder =
2223 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
2224 }
2225 if let Some(ref param_value) = use_api {
2226 local_var_req_builder =
2227 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
2228 }
2229 if let Some(ref param_value) = use_reset_password {
2230 local_var_req_builder =
2231 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
2232 }
2233 if let Some(ref param_value) = use_secrets_manager {
2234 local_var_req_builder =
2235 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
2236 }
2237 if let Some(ref param_value) = self_host {
2238 local_var_req_builder =
2239 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
2240 }
2241 if let Some(ref param_value) = users_get_premium {
2242 local_var_req_builder =
2243 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
2244 }
2245 if let Some(ref param_value) = use_custom_permissions {
2246 local_var_req_builder =
2247 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
2248 }
2249 if let Some(ref param_value) = storage {
2250 local_var_req_builder =
2251 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
2252 }
2253 if let Some(ref param_value) = max_storage_gb {
2254 local_var_req_builder =
2255 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
2256 }
2257 if let Some(ref param_value) = gateway {
2258 local_var_req_builder =
2259 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
2260 }
2261 if let Some(ref param_value) = gateway_customer_id {
2262 local_var_req_builder =
2263 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
2264 }
2265 if let Some(ref param_value) = gateway_subscription_id {
2266 local_var_req_builder =
2267 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
2268 }
2269 if let Some(ref param_value) = reference_data {
2270 local_var_req_builder =
2271 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
2272 }
2273 if let Some(ref param_value) = enabled {
2274 local_var_req_builder =
2275 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
2276 }
2277 if let Some(ref param_value) = license_key {
2278 local_var_req_builder =
2279 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
2280 }
2281 if let Some(ref param_value) = public_key {
2282 local_var_req_builder =
2283 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
2284 }
2285 if let Some(ref param_value) = private_key {
2286 local_var_req_builder =
2287 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
2288 }
2289 if let Some(ref param_value) = two_factor_providers {
2290 local_var_req_builder =
2291 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
2292 }
2293 if let Some(ref param_value) = expiration_date {
2294 local_var_req_builder =
2295 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
2296 }
2297 if let Some(ref param_value) = creation_date {
2298 local_var_req_builder =
2299 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
2300 }
2301 if let Some(ref param_value) = revision_date {
2302 local_var_req_builder =
2303 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
2304 }
2305 if let Some(ref param_value) = max_autoscale_seats {
2306 local_var_req_builder =
2307 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
2308 }
2309 if let Some(ref param_value) = owners_notified_of_autoscaling {
2310 local_var_req_builder = local_var_req_builder
2311 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
2312 }
2313 if let Some(ref param_value) = status {
2314 local_var_req_builder =
2315 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
2316 }
2317 if let Some(ref param_value) = use_password_manager {
2318 local_var_req_builder =
2319 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
2320 }
2321 if let Some(ref param_value) = sm_seats {
2322 local_var_req_builder =
2323 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
2324 }
2325 if let Some(ref param_value) = sm_service_accounts {
2326 local_var_req_builder =
2327 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
2328 }
2329 if let Some(ref param_value) = max_autoscale_sm_seats {
2330 local_var_req_builder =
2331 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
2332 }
2333 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
2334 local_var_req_builder = local_var_req_builder
2335 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
2336 }
2337 if let Some(ref param_value) = limit_collection_creation {
2338 local_var_req_builder = local_var_req_builder
2339 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
2340 }
2341 if let Some(ref param_value) = limit_collection_deletion {
2342 local_var_req_builder = local_var_req_builder
2343 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
2344 }
2345 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
2346 local_var_req_builder = local_var_req_builder.query(&[(
2347 "allowAdminAccessToAllCollectionItems",
2348 ¶m_value.to_string(),
2349 )]);
2350 }
2351 if let Some(ref param_value) = limit_item_deletion {
2352 local_var_req_builder =
2353 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
2354 }
2355 if let Some(ref param_value) = use_risk_insights {
2356 local_var_req_builder =
2357 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
2358 }
2359 if let Some(ref param_value) = use_organization_domains {
2360 local_var_req_builder = local_var_req_builder
2361 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
2362 }
2363 if let Some(ref param_value) = use_admin_sponsored_families {
2364 local_var_req_builder = local_var_req_builder
2365 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
2366 }
2367 if let Some(ref param_value) = sync_seats {
2368 local_var_req_builder =
2369 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
2370 }
2371 if let Some(ref param_value) = use_automatic_user_confirmation {
2372 local_var_req_builder = local_var_req_builder
2373 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
2374 }
2375 if let Some(ref param_value) = use_phishing_blocker {
2376 local_var_req_builder =
2377 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
2378 }
2379 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
2380 local_var_req_builder = local_var_req_builder
2381 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
2382 }
2383 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
2384 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
2385 };
2386
2387 let local_var_req = local_var_req_builder.build()?;
2388 let local_var_resp = local_var_client.execute(local_var_req).await?;
2389
2390 let local_var_status = local_var_resp.status();
2391 let local_var_content = local_var_resp.text().await?;
2392
2393 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
2394 Ok(())
2395 } else {
2396 let local_var_entity: Option<GetPaymentMethodError> =
2397 serde_json::from_str(&local_var_content).ok();
2398 let local_var_error = ResponseContent {
2399 status: local_var_status,
2400 content: local_var_content,
2401 entity: local_var_entity,
2402 };
2403 Err(Error::ResponseError(local_var_error))
2404 }
2405 }
2406
2407 async fn get_warnings<'a>(
2408 &self,
2409 organization_id: &'a str,
2410 id: Option<uuid::Uuid>,
2411 identifier: Option<&'a str>,
2412 name: Option<&'a str>,
2413 business_name: Option<&'a str>,
2414 business_address1: Option<&'a str>,
2415 business_address2: Option<&'a str>,
2416 business_address3: Option<&'a str>,
2417 business_country: Option<&'a str>,
2418 business_tax_number: Option<&'a str>,
2419 billing_email: Option<&'a str>,
2420 plan: Option<&'a str>,
2421 plan_type: Option<models::PlanType>,
2422 seats: Option<i32>,
2423 max_collections: Option<i32>,
2424 use_policies: Option<bool>,
2425 use_sso: Option<bool>,
2426 use_key_connector: Option<bool>,
2427 use_scim: Option<bool>,
2428 use_groups: Option<bool>,
2429 use_directory: Option<bool>,
2430 use_events: Option<bool>,
2431 use_totp: Option<bool>,
2432 use2fa: Option<bool>,
2433 use_api: Option<bool>,
2434 use_reset_password: Option<bool>,
2435 use_secrets_manager: Option<bool>,
2436 self_host: Option<bool>,
2437 users_get_premium: Option<bool>,
2438 use_custom_permissions: Option<bool>,
2439 storage: Option<i64>,
2440 max_storage_gb: Option<i32>,
2441 gateway: Option<models::GatewayType>,
2442 gateway_customer_id: Option<&'a str>,
2443 gateway_subscription_id: Option<&'a str>,
2444 reference_data: Option<&'a str>,
2445 enabled: Option<bool>,
2446 license_key: Option<&'a str>,
2447 public_key: Option<&'a str>,
2448 private_key: Option<&'a str>,
2449 two_factor_providers: Option<&'a str>,
2450 expiration_date: Option<String>,
2451 creation_date: Option<String>,
2452 revision_date: Option<String>,
2453 max_autoscale_seats: Option<i32>,
2454 owners_notified_of_autoscaling: Option<String>,
2455 status: Option<models::OrganizationStatusType>,
2456 use_password_manager: Option<bool>,
2457 sm_seats: Option<i32>,
2458 sm_service_accounts: Option<i32>,
2459 max_autoscale_sm_seats: Option<i32>,
2460 max_autoscale_sm_service_accounts: Option<i32>,
2461 limit_collection_creation: Option<bool>,
2462 limit_collection_deletion: Option<bool>,
2463 allow_admin_access_to_all_collection_items: Option<bool>,
2464 limit_item_deletion: Option<bool>,
2465 use_risk_insights: Option<bool>,
2466 use_organization_domains: Option<bool>,
2467 use_admin_sponsored_families: Option<bool>,
2468 sync_seats: Option<bool>,
2469 use_automatic_user_confirmation: Option<bool>,
2470 use_phishing_blocker: Option<bool>,
2471 ) -> Result<(), Error<GetWarningsError>> {
2472 let local_var_configuration = &self.configuration;
2473
2474 let local_var_client = &local_var_configuration.client;
2475
2476 let local_var_uri_str = format!(
2477 "{}/organizations/{organizationId}/billing/vnext/warnings",
2478 local_var_configuration.base_path,
2479 organizationId = crate::apis::urlencode(organization_id)
2480 );
2481 let mut local_var_req_builder =
2482 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
2483
2484 if let Some(ref param_value) = id {
2485 local_var_req_builder =
2486 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
2487 }
2488 if let Some(ref param_value) = identifier {
2489 local_var_req_builder =
2490 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
2491 }
2492 if let Some(ref param_value) = name {
2493 local_var_req_builder =
2494 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
2495 }
2496 if let Some(ref param_value) = business_name {
2497 local_var_req_builder =
2498 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
2499 }
2500 if let Some(ref param_value) = business_address1 {
2501 local_var_req_builder =
2502 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
2503 }
2504 if let Some(ref param_value) = business_address2 {
2505 local_var_req_builder =
2506 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
2507 }
2508 if let Some(ref param_value) = business_address3 {
2509 local_var_req_builder =
2510 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
2511 }
2512 if let Some(ref param_value) = business_country {
2513 local_var_req_builder =
2514 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
2515 }
2516 if let Some(ref param_value) = business_tax_number {
2517 local_var_req_builder =
2518 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
2519 }
2520 if let Some(ref param_value) = billing_email {
2521 local_var_req_builder =
2522 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
2523 }
2524 if let Some(ref param_value) = plan {
2525 local_var_req_builder =
2526 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
2527 }
2528 if let Some(ref param_value) = plan_type {
2529 local_var_req_builder =
2530 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
2531 }
2532 if let Some(ref param_value) = seats {
2533 local_var_req_builder =
2534 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
2535 }
2536 if let Some(ref param_value) = max_collections {
2537 local_var_req_builder =
2538 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
2539 }
2540 if let Some(ref param_value) = use_policies {
2541 local_var_req_builder =
2542 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
2543 }
2544 if let Some(ref param_value) = use_sso {
2545 local_var_req_builder =
2546 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
2547 }
2548 if let Some(ref param_value) = use_key_connector {
2549 local_var_req_builder =
2550 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
2551 }
2552 if let Some(ref param_value) = use_scim {
2553 local_var_req_builder =
2554 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
2555 }
2556 if let Some(ref param_value) = use_groups {
2557 local_var_req_builder =
2558 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
2559 }
2560 if let Some(ref param_value) = use_directory {
2561 local_var_req_builder =
2562 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
2563 }
2564 if let Some(ref param_value) = use_events {
2565 local_var_req_builder =
2566 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
2567 }
2568 if let Some(ref param_value) = use_totp {
2569 local_var_req_builder =
2570 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
2571 }
2572 if let Some(ref param_value) = use2fa {
2573 local_var_req_builder =
2574 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
2575 }
2576 if let Some(ref param_value) = use_api {
2577 local_var_req_builder =
2578 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
2579 }
2580 if let Some(ref param_value) = use_reset_password {
2581 local_var_req_builder =
2582 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
2583 }
2584 if let Some(ref param_value) = use_secrets_manager {
2585 local_var_req_builder =
2586 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
2587 }
2588 if let Some(ref param_value) = self_host {
2589 local_var_req_builder =
2590 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
2591 }
2592 if let Some(ref param_value) = users_get_premium {
2593 local_var_req_builder =
2594 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
2595 }
2596 if let Some(ref param_value) = use_custom_permissions {
2597 local_var_req_builder =
2598 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
2599 }
2600 if let Some(ref param_value) = storage {
2601 local_var_req_builder =
2602 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
2603 }
2604 if let Some(ref param_value) = max_storage_gb {
2605 local_var_req_builder =
2606 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
2607 }
2608 if let Some(ref param_value) = gateway {
2609 local_var_req_builder =
2610 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
2611 }
2612 if let Some(ref param_value) = gateway_customer_id {
2613 local_var_req_builder =
2614 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
2615 }
2616 if let Some(ref param_value) = gateway_subscription_id {
2617 local_var_req_builder =
2618 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
2619 }
2620 if let Some(ref param_value) = reference_data {
2621 local_var_req_builder =
2622 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
2623 }
2624 if let Some(ref param_value) = enabled {
2625 local_var_req_builder =
2626 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
2627 }
2628 if let Some(ref param_value) = license_key {
2629 local_var_req_builder =
2630 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
2631 }
2632 if let Some(ref param_value) = public_key {
2633 local_var_req_builder =
2634 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
2635 }
2636 if let Some(ref param_value) = private_key {
2637 local_var_req_builder =
2638 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
2639 }
2640 if let Some(ref param_value) = two_factor_providers {
2641 local_var_req_builder =
2642 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
2643 }
2644 if let Some(ref param_value) = expiration_date {
2645 local_var_req_builder =
2646 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
2647 }
2648 if let Some(ref param_value) = creation_date {
2649 local_var_req_builder =
2650 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
2651 }
2652 if let Some(ref param_value) = revision_date {
2653 local_var_req_builder =
2654 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
2655 }
2656 if let Some(ref param_value) = max_autoscale_seats {
2657 local_var_req_builder =
2658 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
2659 }
2660 if let Some(ref param_value) = owners_notified_of_autoscaling {
2661 local_var_req_builder = local_var_req_builder
2662 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
2663 }
2664 if let Some(ref param_value) = status {
2665 local_var_req_builder =
2666 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
2667 }
2668 if let Some(ref param_value) = use_password_manager {
2669 local_var_req_builder =
2670 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
2671 }
2672 if let Some(ref param_value) = sm_seats {
2673 local_var_req_builder =
2674 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
2675 }
2676 if let Some(ref param_value) = sm_service_accounts {
2677 local_var_req_builder =
2678 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
2679 }
2680 if let Some(ref param_value) = max_autoscale_sm_seats {
2681 local_var_req_builder =
2682 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
2683 }
2684 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
2685 local_var_req_builder = local_var_req_builder
2686 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
2687 }
2688 if let Some(ref param_value) = limit_collection_creation {
2689 local_var_req_builder = local_var_req_builder
2690 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
2691 }
2692 if let Some(ref param_value) = limit_collection_deletion {
2693 local_var_req_builder = local_var_req_builder
2694 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
2695 }
2696 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
2697 local_var_req_builder = local_var_req_builder.query(&[(
2698 "allowAdminAccessToAllCollectionItems",
2699 ¶m_value.to_string(),
2700 )]);
2701 }
2702 if let Some(ref param_value) = limit_item_deletion {
2703 local_var_req_builder =
2704 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
2705 }
2706 if let Some(ref param_value) = use_risk_insights {
2707 local_var_req_builder =
2708 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
2709 }
2710 if let Some(ref param_value) = use_organization_domains {
2711 local_var_req_builder = local_var_req_builder
2712 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
2713 }
2714 if let Some(ref param_value) = use_admin_sponsored_families {
2715 local_var_req_builder = local_var_req_builder
2716 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
2717 }
2718 if let Some(ref param_value) = sync_seats {
2719 local_var_req_builder =
2720 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
2721 }
2722 if let Some(ref param_value) = use_automatic_user_confirmation {
2723 local_var_req_builder = local_var_req_builder
2724 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
2725 }
2726 if let Some(ref param_value) = use_phishing_blocker {
2727 local_var_req_builder =
2728 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
2729 }
2730 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
2731 local_var_req_builder = local_var_req_builder
2732 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
2733 }
2734 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
2735 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
2736 };
2737
2738 let local_var_req = local_var_req_builder.build()?;
2739 let local_var_resp = local_var_client.execute(local_var_req).await?;
2740
2741 let local_var_status = local_var_resp.status();
2742 let local_var_content = local_var_resp.text().await?;
2743
2744 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
2745 Ok(())
2746 } else {
2747 let local_var_entity: Option<GetWarningsError> =
2748 serde_json::from_str(&local_var_content).ok();
2749 let local_var_error = ResponseContent {
2750 status: local_var_status,
2751 content: local_var_content,
2752 entity: local_var_entity,
2753 };
2754 Err(Error::ResponseError(local_var_error))
2755 }
2756 }
2757
2758 async fn restart_subscription<'a>(
2759 &self,
2760 organization_id: &'a str,
2761 id: Option<uuid::Uuid>,
2762 identifier: Option<&'a str>,
2763 name: Option<&'a str>,
2764 business_name: Option<&'a str>,
2765 business_address1: Option<&'a str>,
2766 business_address2: Option<&'a str>,
2767 business_address3: Option<&'a str>,
2768 business_country: Option<&'a str>,
2769 business_tax_number: Option<&'a str>,
2770 billing_email: Option<&'a str>,
2771 plan: Option<&'a str>,
2772 plan_type: Option<models::PlanType>,
2773 seats: Option<i32>,
2774 max_collections: Option<i32>,
2775 use_policies: Option<bool>,
2776 use_sso: Option<bool>,
2777 use_key_connector: Option<bool>,
2778 use_scim: Option<bool>,
2779 use_groups: Option<bool>,
2780 use_directory: Option<bool>,
2781 use_events: Option<bool>,
2782 use_totp: Option<bool>,
2783 use2fa: Option<bool>,
2784 use_api: Option<bool>,
2785 use_reset_password: Option<bool>,
2786 use_secrets_manager: Option<bool>,
2787 self_host: Option<bool>,
2788 users_get_premium: Option<bool>,
2789 use_custom_permissions: Option<bool>,
2790 storage: Option<i64>,
2791 max_storage_gb: Option<i32>,
2792 gateway: Option<models::GatewayType>,
2793 gateway_customer_id: Option<&'a str>,
2794 gateway_subscription_id: Option<&'a str>,
2795 reference_data: Option<&'a str>,
2796 enabled: Option<bool>,
2797 license_key: Option<&'a str>,
2798 public_key: Option<&'a str>,
2799 private_key: Option<&'a str>,
2800 two_factor_providers: Option<&'a str>,
2801 expiration_date: Option<String>,
2802 creation_date: Option<String>,
2803 revision_date: Option<String>,
2804 max_autoscale_seats: Option<i32>,
2805 owners_notified_of_autoscaling: Option<String>,
2806 status: Option<models::OrganizationStatusType>,
2807 use_password_manager: Option<bool>,
2808 sm_seats: Option<i32>,
2809 sm_service_accounts: Option<i32>,
2810 max_autoscale_sm_seats: Option<i32>,
2811 max_autoscale_sm_service_accounts: Option<i32>,
2812 limit_collection_creation: Option<bool>,
2813 limit_collection_deletion: Option<bool>,
2814 allow_admin_access_to_all_collection_items: Option<bool>,
2815 limit_item_deletion: Option<bool>,
2816 use_risk_insights: Option<bool>,
2817 use_organization_domains: Option<bool>,
2818 use_admin_sponsored_families: Option<bool>,
2819 sync_seats: Option<bool>,
2820 use_automatic_user_confirmation: Option<bool>,
2821 use_phishing_blocker: Option<bool>,
2822 restart_subscription_request: Option<models::RestartSubscriptionRequest>,
2823 ) -> Result<(), Error<RestartSubscriptionError>> {
2824 let local_var_configuration = &self.configuration;
2825
2826 let local_var_client = &local_var_configuration.client;
2827
2828 let local_var_uri_str = format!(
2829 "{}/organizations/{organizationId}/billing/vnext/subscription/restart",
2830 local_var_configuration.base_path,
2831 organizationId = crate::apis::urlencode(organization_id)
2832 );
2833 let mut local_var_req_builder =
2834 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
2835
2836 if let Some(ref param_value) = id {
2837 local_var_req_builder =
2838 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
2839 }
2840 if let Some(ref param_value) = identifier {
2841 local_var_req_builder =
2842 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
2843 }
2844 if let Some(ref param_value) = name {
2845 local_var_req_builder =
2846 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
2847 }
2848 if let Some(ref param_value) = business_name {
2849 local_var_req_builder =
2850 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
2851 }
2852 if let Some(ref param_value) = business_address1 {
2853 local_var_req_builder =
2854 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
2855 }
2856 if let Some(ref param_value) = business_address2 {
2857 local_var_req_builder =
2858 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
2859 }
2860 if let Some(ref param_value) = business_address3 {
2861 local_var_req_builder =
2862 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
2863 }
2864 if let Some(ref param_value) = business_country {
2865 local_var_req_builder =
2866 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
2867 }
2868 if let Some(ref param_value) = business_tax_number {
2869 local_var_req_builder =
2870 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
2871 }
2872 if let Some(ref param_value) = billing_email {
2873 local_var_req_builder =
2874 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
2875 }
2876 if let Some(ref param_value) = plan {
2877 local_var_req_builder =
2878 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
2879 }
2880 if let Some(ref param_value) = plan_type {
2881 local_var_req_builder =
2882 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
2883 }
2884 if let Some(ref param_value) = seats {
2885 local_var_req_builder =
2886 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
2887 }
2888 if let Some(ref param_value) = max_collections {
2889 local_var_req_builder =
2890 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
2891 }
2892 if let Some(ref param_value) = use_policies {
2893 local_var_req_builder =
2894 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
2895 }
2896 if let Some(ref param_value) = use_sso {
2897 local_var_req_builder =
2898 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
2899 }
2900 if let Some(ref param_value) = use_key_connector {
2901 local_var_req_builder =
2902 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
2903 }
2904 if let Some(ref param_value) = use_scim {
2905 local_var_req_builder =
2906 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
2907 }
2908 if let Some(ref param_value) = use_groups {
2909 local_var_req_builder =
2910 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
2911 }
2912 if let Some(ref param_value) = use_directory {
2913 local_var_req_builder =
2914 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
2915 }
2916 if let Some(ref param_value) = use_events {
2917 local_var_req_builder =
2918 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
2919 }
2920 if let Some(ref param_value) = use_totp {
2921 local_var_req_builder =
2922 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
2923 }
2924 if let Some(ref param_value) = use2fa {
2925 local_var_req_builder =
2926 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
2927 }
2928 if let Some(ref param_value) = use_api {
2929 local_var_req_builder =
2930 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
2931 }
2932 if let Some(ref param_value) = use_reset_password {
2933 local_var_req_builder =
2934 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
2935 }
2936 if let Some(ref param_value) = use_secrets_manager {
2937 local_var_req_builder =
2938 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
2939 }
2940 if let Some(ref param_value) = self_host {
2941 local_var_req_builder =
2942 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
2943 }
2944 if let Some(ref param_value) = users_get_premium {
2945 local_var_req_builder =
2946 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
2947 }
2948 if let Some(ref param_value) = use_custom_permissions {
2949 local_var_req_builder =
2950 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
2951 }
2952 if let Some(ref param_value) = storage {
2953 local_var_req_builder =
2954 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
2955 }
2956 if let Some(ref param_value) = max_storage_gb {
2957 local_var_req_builder =
2958 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
2959 }
2960 if let Some(ref param_value) = gateway {
2961 local_var_req_builder =
2962 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
2963 }
2964 if let Some(ref param_value) = gateway_customer_id {
2965 local_var_req_builder =
2966 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
2967 }
2968 if let Some(ref param_value) = gateway_subscription_id {
2969 local_var_req_builder =
2970 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
2971 }
2972 if let Some(ref param_value) = reference_data {
2973 local_var_req_builder =
2974 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
2975 }
2976 if let Some(ref param_value) = enabled {
2977 local_var_req_builder =
2978 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
2979 }
2980 if let Some(ref param_value) = license_key {
2981 local_var_req_builder =
2982 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
2983 }
2984 if let Some(ref param_value) = public_key {
2985 local_var_req_builder =
2986 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
2987 }
2988 if let Some(ref param_value) = private_key {
2989 local_var_req_builder =
2990 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
2991 }
2992 if let Some(ref param_value) = two_factor_providers {
2993 local_var_req_builder =
2994 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
2995 }
2996 if let Some(ref param_value) = expiration_date {
2997 local_var_req_builder =
2998 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
2999 }
3000 if let Some(ref param_value) = creation_date {
3001 local_var_req_builder =
3002 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
3003 }
3004 if let Some(ref param_value) = revision_date {
3005 local_var_req_builder =
3006 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
3007 }
3008 if let Some(ref param_value) = max_autoscale_seats {
3009 local_var_req_builder =
3010 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
3011 }
3012 if let Some(ref param_value) = owners_notified_of_autoscaling {
3013 local_var_req_builder = local_var_req_builder
3014 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
3015 }
3016 if let Some(ref param_value) = status {
3017 local_var_req_builder =
3018 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
3019 }
3020 if let Some(ref param_value) = use_password_manager {
3021 local_var_req_builder =
3022 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
3023 }
3024 if let Some(ref param_value) = sm_seats {
3025 local_var_req_builder =
3026 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
3027 }
3028 if let Some(ref param_value) = sm_service_accounts {
3029 local_var_req_builder =
3030 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
3031 }
3032 if let Some(ref param_value) = max_autoscale_sm_seats {
3033 local_var_req_builder =
3034 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
3035 }
3036 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
3037 local_var_req_builder = local_var_req_builder
3038 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
3039 }
3040 if let Some(ref param_value) = limit_collection_creation {
3041 local_var_req_builder = local_var_req_builder
3042 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
3043 }
3044 if let Some(ref param_value) = limit_collection_deletion {
3045 local_var_req_builder = local_var_req_builder
3046 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
3047 }
3048 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
3049 local_var_req_builder = local_var_req_builder.query(&[(
3050 "allowAdminAccessToAllCollectionItems",
3051 ¶m_value.to_string(),
3052 )]);
3053 }
3054 if let Some(ref param_value) = limit_item_deletion {
3055 local_var_req_builder =
3056 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
3057 }
3058 if let Some(ref param_value) = use_risk_insights {
3059 local_var_req_builder =
3060 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
3061 }
3062 if let Some(ref param_value) = use_organization_domains {
3063 local_var_req_builder = local_var_req_builder
3064 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
3065 }
3066 if let Some(ref param_value) = use_admin_sponsored_families {
3067 local_var_req_builder = local_var_req_builder
3068 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
3069 }
3070 if let Some(ref param_value) = sync_seats {
3071 local_var_req_builder =
3072 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
3073 }
3074 if let Some(ref param_value) = use_automatic_user_confirmation {
3075 local_var_req_builder = local_var_req_builder
3076 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
3077 }
3078 if let Some(ref param_value) = use_phishing_blocker {
3079 local_var_req_builder =
3080 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
3081 }
3082 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
3083 local_var_req_builder = local_var_req_builder
3084 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
3085 }
3086 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
3087 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
3088 };
3089 local_var_req_builder = local_var_req_builder.json(&restart_subscription_request);
3090
3091 let local_var_req = local_var_req_builder.build()?;
3092 let local_var_resp = local_var_client.execute(local_var_req).await?;
3093
3094 let local_var_status = local_var_resp.status();
3095 let local_var_content = local_var_resp.text().await?;
3096
3097 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
3098 Ok(())
3099 } else {
3100 let local_var_entity: Option<RestartSubscriptionError> =
3101 serde_json::from_str(&local_var_content).ok();
3102 let local_var_error = ResponseContent {
3103 status: local_var_status,
3104 content: local_var_content,
3105 entity: local_var_entity,
3106 };
3107 Err(Error::ResponseError(local_var_error))
3108 }
3109 }
3110
3111 async fn update_billing_address<'a>(
3112 &self,
3113 organization_id: &'a str,
3114 id: Option<uuid::Uuid>,
3115 identifier: Option<&'a str>,
3116 name: Option<&'a str>,
3117 business_name: Option<&'a str>,
3118 business_address1: Option<&'a str>,
3119 business_address2: Option<&'a str>,
3120 business_address3: Option<&'a str>,
3121 business_country: Option<&'a str>,
3122 business_tax_number: Option<&'a str>,
3123 billing_email: Option<&'a str>,
3124 plan: Option<&'a str>,
3125 plan_type: Option<models::PlanType>,
3126 seats: Option<i32>,
3127 max_collections: Option<i32>,
3128 use_policies: Option<bool>,
3129 use_sso: Option<bool>,
3130 use_key_connector: Option<bool>,
3131 use_scim: Option<bool>,
3132 use_groups: Option<bool>,
3133 use_directory: Option<bool>,
3134 use_events: Option<bool>,
3135 use_totp: Option<bool>,
3136 use2fa: Option<bool>,
3137 use_api: Option<bool>,
3138 use_reset_password: Option<bool>,
3139 use_secrets_manager: Option<bool>,
3140 self_host: Option<bool>,
3141 users_get_premium: Option<bool>,
3142 use_custom_permissions: Option<bool>,
3143 storage: Option<i64>,
3144 max_storage_gb: Option<i32>,
3145 gateway: Option<models::GatewayType>,
3146 gateway_customer_id: Option<&'a str>,
3147 gateway_subscription_id: Option<&'a str>,
3148 reference_data: Option<&'a str>,
3149 enabled: Option<bool>,
3150 license_key: Option<&'a str>,
3151 public_key: Option<&'a str>,
3152 private_key: Option<&'a str>,
3153 two_factor_providers: Option<&'a str>,
3154 expiration_date: Option<String>,
3155 creation_date: Option<String>,
3156 revision_date: Option<String>,
3157 max_autoscale_seats: Option<i32>,
3158 owners_notified_of_autoscaling: Option<String>,
3159 status: Option<models::OrganizationStatusType>,
3160 use_password_manager: Option<bool>,
3161 sm_seats: Option<i32>,
3162 sm_service_accounts: Option<i32>,
3163 max_autoscale_sm_seats: Option<i32>,
3164 max_autoscale_sm_service_accounts: Option<i32>,
3165 limit_collection_creation: Option<bool>,
3166 limit_collection_deletion: Option<bool>,
3167 allow_admin_access_to_all_collection_items: Option<bool>,
3168 limit_item_deletion: Option<bool>,
3169 use_risk_insights: Option<bool>,
3170 use_organization_domains: Option<bool>,
3171 use_admin_sponsored_families: Option<bool>,
3172 sync_seats: Option<bool>,
3173 use_automatic_user_confirmation: Option<bool>,
3174 use_phishing_blocker: Option<bool>,
3175 billing_address_request: Option<models::BillingAddressRequest>,
3176 ) -> Result<(), Error<UpdateBillingAddressError>> {
3177 let local_var_configuration = &self.configuration;
3178
3179 let local_var_client = &local_var_configuration.client;
3180
3181 let local_var_uri_str = format!(
3182 "{}/organizations/{organizationId}/billing/vnext/address",
3183 local_var_configuration.base_path,
3184 organizationId = crate::apis::urlencode(organization_id)
3185 );
3186 let mut local_var_req_builder =
3187 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
3188
3189 if let Some(ref param_value) = id {
3190 local_var_req_builder =
3191 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
3192 }
3193 if let Some(ref param_value) = identifier {
3194 local_var_req_builder =
3195 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
3196 }
3197 if let Some(ref param_value) = name {
3198 local_var_req_builder =
3199 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
3200 }
3201 if let Some(ref param_value) = business_name {
3202 local_var_req_builder =
3203 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
3204 }
3205 if let Some(ref param_value) = business_address1 {
3206 local_var_req_builder =
3207 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
3208 }
3209 if let Some(ref param_value) = business_address2 {
3210 local_var_req_builder =
3211 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
3212 }
3213 if let Some(ref param_value) = business_address3 {
3214 local_var_req_builder =
3215 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
3216 }
3217 if let Some(ref param_value) = business_country {
3218 local_var_req_builder =
3219 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
3220 }
3221 if let Some(ref param_value) = business_tax_number {
3222 local_var_req_builder =
3223 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
3224 }
3225 if let Some(ref param_value) = billing_email {
3226 local_var_req_builder =
3227 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
3228 }
3229 if let Some(ref param_value) = plan {
3230 local_var_req_builder =
3231 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
3232 }
3233 if let Some(ref param_value) = plan_type {
3234 local_var_req_builder =
3235 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
3236 }
3237 if let Some(ref param_value) = seats {
3238 local_var_req_builder =
3239 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
3240 }
3241 if let Some(ref param_value) = max_collections {
3242 local_var_req_builder =
3243 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
3244 }
3245 if let Some(ref param_value) = use_policies {
3246 local_var_req_builder =
3247 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
3248 }
3249 if let Some(ref param_value) = use_sso {
3250 local_var_req_builder =
3251 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
3252 }
3253 if let Some(ref param_value) = use_key_connector {
3254 local_var_req_builder =
3255 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
3256 }
3257 if let Some(ref param_value) = use_scim {
3258 local_var_req_builder =
3259 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
3260 }
3261 if let Some(ref param_value) = use_groups {
3262 local_var_req_builder =
3263 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
3264 }
3265 if let Some(ref param_value) = use_directory {
3266 local_var_req_builder =
3267 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
3268 }
3269 if let Some(ref param_value) = use_events {
3270 local_var_req_builder =
3271 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
3272 }
3273 if let Some(ref param_value) = use_totp {
3274 local_var_req_builder =
3275 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
3276 }
3277 if let Some(ref param_value) = use2fa {
3278 local_var_req_builder =
3279 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
3280 }
3281 if let Some(ref param_value) = use_api {
3282 local_var_req_builder =
3283 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
3284 }
3285 if let Some(ref param_value) = use_reset_password {
3286 local_var_req_builder =
3287 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
3288 }
3289 if let Some(ref param_value) = use_secrets_manager {
3290 local_var_req_builder =
3291 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
3292 }
3293 if let Some(ref param_value) = self_host {
3294 local_var_req_builder =
3295 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
3296 }
3297 if let Some(ref param_value) = users_get_premium {
3298 local_var_req_builder =
3299 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
3300 }
3301 if let Some(ref param_value) = use_custom_permissions {
3302 local_var_req_builder =
3303 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
3304 }
3305 if let Some(ref param_value) = storage {
3306 local_var_req_builder =
3307 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
3308 }
3309 if let Some(ref param_value) = max_storage_gb {
3310 local_var_req_builder =
3311 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
3312 }
3313 if let Some(ref param_value) = gateway {
3314 local_var_req_builder =
3315 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
3316 }
3317 if let Some(ref param_value) = gateway_customer_id {
3318 local_var_req_builder =
3319 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
3320 }
3321 if let Some(ref param_value) = gateway_subscription_id {
3322 local_var_req_builder =
3323 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
3324 }
3325 if let Some(ref param_value) = reference_data {
3326 local_var_req_builder =
3327 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
3328 }
3329 if let Some(ref param_value) = enabled {
3330 local_var_req_builder =
3331 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
3332 }
3333 if let Some(ref param_value) = license_key {
3334 local_var_req_builder =
3335 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
3336 }
3337 if let Some(ref param_value) = public_key {
3338 local_var_req_builder =
3339 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
3340 }
3341 if let Some(ref param_value) = private_key {
3342 local_var_req_builder =
3343 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
3344 }
3345 if let Some(ref param_value) = two_factor_providers {
3346 local_var_req_builder =
3347 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
3348 }
3349 if let Some(ref param_value) = expiration_date {
3350 local_var_req_builder =
3351 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
3352 }
3353 if let Some(ref param_value) = creation_date {
3354 local_var_req_builder =
3355 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
3356 }
3357 if let Some(ref param_value) = revision_date {
3358 local_var_req_builder =
3359 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
3360 }
3361 if let Some(ref param_value) = max_autoscale_seats {
3362 local_var_req_builder =
3363 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
3364 }
3365 if let Some(ref param_value) = owners_notified_of_autoscaling {
3366 local_var_req_builder = local_var_req_builder
3367 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
3368 }
3369 if let Some(ref param_value) = status {
3370 local_var_req_builder =
3371 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
3372 }
3373 if let Some(ref param_value) = use_password_manager {
3374 local_var_req_builder =
3375 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
3376 }
3377 if let Some(ref param_value) = sm_seats {
3378 local_var_req_builder =
3379 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
3380 }
3381 if let Some(ref param_value) = sm_service_accounts {
3382 local_var_req_builder =
3383 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
3384 }
3385 if let Some(ref param_value) = max_autoscale_sm_seats {
3386 local_var_req_builder =
3387 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
3388 }
3389 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
3390 local_var_req_builder = local_var_req_builder
3391 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
3392 }
3393 if let Some(ref param_value) = limit_collection_creation {
3394 local_var_req_builder = local_var_req_builder
3395 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
3396 }
3397 if let Some(ref param_value) = limit_collection_deletion {
3398 local_var_req_builder = local_var_req_builder
3399 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
3400 }
3401 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
3402 local_var_req_builder = local_var_req_builder.query(&[(
3403 "allowAdminAccessToAllCollectionItems",
3404 ¶m_value.to_string(),
3405 )]);
3406 }
3407 if let Some(ref param_value) = limit_item_deletion {
3408 local_var_req_builder =
3409 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
3410 }
3411 if let Some(ref param_value) = use_risk_insights {
3412 local_var_req_builder =
3413 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
3414 }
3415 if let Some(ref param_value) = use_organization_domains {
3416 local_var_req_builder = local_var_req_builder
3417 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
3418 }
3419 if let Some(ref param_value) = use_admin_sponsored_families {
3420 local_var_req_builder = local_var_req_builder
3421 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
3422 }
3423 if let Some(ref param_value) = sync_seats {
3424 local_var_req_builder =
3425 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
3426 }
3427 if let Some(ref param_value) = use_automatic_user_confirmation {
3428 local_var_req_builder = local_var_req_builder
3429 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
3430 }
3431 if let Some(ref param_value) = use_phishing_blocker {
3432 local_var_req_builder =
3433 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
3434 }
3435 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
3436 local_var_req_builder = local_var_req_builder
3437 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
3438 }
3439 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
3440 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
3441 };
3442 local_var_req_builder = local_var_req_builder.json(&billing_address_request);
3443
3444 let local_var_req = local_var_req_builder.build()?;
3445 let local_var_resp = local_var_client.execute(local_var_req).await?;
3446
3447 let local_var_status = local_var_resp.status();
3448 let local_var_content = local_var_resp.text().await?;
3449
3450 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
3451 Ok(())
3452 } else {
3453 let local_var_entity: Option<UpdateBillingAddressError> =
3454 serde_json::from_str(&local_var_content).ok();
3455 let local_var_error = ResponseContent {
3456 status: local_var_status,
3457 content: local_var_content,
3458 entity: local_var_entity,
3459 };
3460 Err(Error::ResponseError(local_var_error))
3461 }
3462 }
3463
3464 async fn update_payment_method<'a>(
3465 &self,
3466 organization_id: &'a str,
3467 id: Option<uuid::Uuid>,
3468 identifier: Option<&'a str>,
3469 name: Option<&'a str>,
3470 business_name: Option<&'a str>,
3471 business_address1: Option<&'a str>,
3472 business_address2: Option<&'a str>,
3473 business_address3: Option<&'a str>,
3474 business_country: Option<&'a str>,
3475 business_tax_number: Option<&'a str>,
3476 billing_email: Option<&'a str>,
3477 plan: Option<&'a str>,
3478 plan_type: Option<models::PlanType>,
3479 seats: Option<i32>,
3480 max_collections: Option<i32>,
3481 use_policies: Option<bool>,
3482 use_sso: Option<bool>,
3483 use_key_connector: Option<bool>,
3484 use_scim: Option<bool>,
3485 use_groups: Option<bool>,
3486 use_directory: Option<bool>,
3487 use_events: Option<bool>,
3488 use_totp: Option<bool>,
3489 use2fa: Option<bool>,
3490 use_api: Option<bool>,
3491 use_reset_password: Option<bool>,
3492 use_secrets_manager: Option<bool>,
3493 self_host: Option<bool>,
3494 users_get_premium: Option<bool>,
3495 use_custom_permissions: Option<bool>,
3496 storage: Option<i64>,
3497 max_storage_gb: Option<i32>,
3498 gateway: Option<models::GatewayType>,
3499 gateway_customer_id: Option<&'a str>,
3500 gateway_subscription_id: Option<&'a str>,
3501 reference_data: Option<&'a str>,
3502 enabled: Option<bool>,
3503 license_key: Option<&'a str>,
3504 public_key: Option<&'a str>,
3505 private_key: Option<&'a str>,
3506 two_factor_providers: Option<&'a str>,
3507 expiration_date: Option<String>,
3508 creation_date: Option<String>,
3509 revision_date: Option<String>,
3510 max_autoscale_seats: Option<i32>,
3511 owners_notified_of_autoscaling: Option<String>,
3512 status: Option<models::OrganizationStatusType>,
3513 use_password_manager: Option<bool>,
3514 sm_seats: Option<i32>,
3515 sm_service_accounts: Option<i32>,
3516 max_autoscale_sm_seats: Option<i32>,
3517 max_autoscale_sm_service_accounts: Option<i32>,
3518 limit_collection_creation: Option<bool>,
3519 limit_collection_deletion: Option<bool>,
3520 allow_admin_access_to_all_collection_items: Option<bool>,
3521 limit_item_deletion: Option<bool>,
3522 use_risk_insights: Option<bool>,
3523 use_organization_domains: Option<bool>,
3524 use_admin_sponsored_families: Option<bool>,
3525 sync_seats: Option<bool>,
3526 use_automatic_user_confirmation: Option<bool>,
3527 use_phishing_blocker: Option<bool>,
3528 tokenized_payment_method_request: Option<models::TokenizedPaymentMethodRequest>,
3529 ) -> Result<(), Error<UpdatePaymentMethodError>> {
3530 let local_var_configuration = &self.configuration;
3531
3532 let local_var_client = &local_var_configuration.client;
3533
3534 let local_var_uri_str = format!(
3535 "{}/organizations/{organizationId}/billing/vnext/payment-method",
3536 local_var_configuration.base_path,
3537 organizationId = crate::apis::urlencode(organization_id)
3538 );
3539 let mut local_var_req_builder =
3540 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
3541
3542 if let Some(ref param_value) = id {
3543 local_var_req_builder =
3544 local_var_req_builder.query(&[("id", ¶m_value.to_string())]);
3545 }
3546 if let Some(ref param_value) = identifier {
3547 local_var_req_builder =
3548 local_var_req_builder.query(&[("identifier", ¶m_value.to_string())]);
3549 }
3550 if let Some(ref param_value) = name {
3551 local_var_req_builder =
3552 local_var_req_builder.query(&[("name", ¶m_value.to_string())]);
3553 }
3554 if let Some(ref param_value) = business_name {
3555 local_var_req_builder =
3556 local_var_req_builder.query(&[("businessName", ¶m_value.to_string())]);
3557 }
3558 if let Some(ref param_value) = business_address1 {
3559 local_var_req_builder =
3560 local_var_req_builder.query(&[("businessAddress1", ¶m_value.to_string())]);
3561 }
3562 if let Some(ref param_value) = business_address2 {
3563 local_var_req_builder =
3564 local_var_req_builder.query(&[("businessAddress2", ¶m_value.to_string())]);
3565 }
3566 if let Some(ref param_value) = business_address3 {
3567 local_var_req_builder =
3568 local_var_req_builder.query(&[("businessAddress3", ¶m_value.to_string())]);
3569 }
3570 if let Some(ref param_value) = business_country {
3571 local_var_req_builder =
3572 local_var_req_builder.query(&[("businessCountry", ¶m_value.to_string())]);
3573 }
3574 if let Some(ref param_value) = business_tax_number {
3575 local_var_req_builder =
3576 local_var_req_builder.query(&[("businessTaxNumber", ¶m_value.to_string())]);
3577 }
3578 if let Some(ref param_value) = billing_email {
3579 local_var_req_builder =
3580 local_var_req_builder.query(&[("billingEmail", ¶m_value.to_string())]);
3581 }
3582 if let Some(ref param_value) = plan {
3583 local_var_req_builder =
3584 local_var_req_builder.query(&[("plan", ¶m_value.to_string())]);
3585 }
3586 if let Some(ref param_value) = plan_type {
3587 local_var_req_builder =
3588 local_var_req_builder.query(&[("planType", ¶m_value.to_string())]);
3589 }
3590 if let Some(ref param_value) = seats {
3591 local_var_req_builder =
3592 local_var_req_builder.query(&[("seats", ¶m_value.to_string())]);
3593 }
3594 if let Some(ref param_value) = max_collections {
3595 local_var_req_builder =
3596 local_var_req_builder.query(&[("maxCollections", ¶m_value.to_string())]);
3597 }
3598 if let Some(ref param_value) = use_policies {
3599 local_var_req_builder =
3600 local_var_req_builder.query(&[("usePolicies", ¶m_value.to_string())]);
3601 }
3602 if let Some(ref param_value) = use_sso {
3603 local_var_req_builder =
3604 local_var_req_builder.query(&[("useSso", ¶m_value.to_string())]);
3605 }
3606 if let Some(ref param_value) = use_key_connector {
3607 local_var_req_builder =
3608 local_var_req_builder.query(&[("useKeyConnector", ¶m_value.to_string())]);
3609 }
3610 if let Some(ref param_value) = use_scim {
3611 local_var_req_builder =
3612 local_var_req_builder.query(&[("useScim", ¶m_value.to_string())]);
3613 }
3614 if let Some(ref param_value) = use_groups {
3615 local_var_req_builder =
3616 local_var_req_builder.query(&[("useGroups", ¶m_value.to_string())]);
3617 }
3618 if let Some(ref param_value) = use_directory {
3619 local_var_req_builder =
3620 local_var_req_builder.query(&[("useDirectory", ¶m_value.to_string())]);
3621 }
3622 if let Some(ref param_value) = use_events {
3623 local_var_req_builder =
3624 local_var_req_builder.query(&[("useEvents", ¶m_value.to_string())]);
3625 }
3626 if let Some(ref param_value) = use_totp {
3627 local_var_req_builder =
3628 local_var_req_builder.query(&[("useTotp", ¶m_value.to_string())]);
3629 }
3630 if let Some(ref param_value) = use2fa {
3631 local_var_req_builder =
3632 local_var_req_builder.query(&[("use2fa", ¶m_value.to_string())]);
3633 }
3634 if let Some(ref param_value) = use_api {
3635 local_var_req_builder =
3636 local_var_req_builder.query(&[("useApi", ¶m_value.to_string())]);
3637 }
3638 if let Some(ref param_value) = use_reset_password {
3639 local_var_req_builder =
3640 local_var_req_builder.query(&[("useResetPassword", ¶m_value.to_string())]);
3641 }
3642 if let Some(ref param_value) = use_secrets_manager {
3643 local_var_req_builder =
3644 local_var_req_builder.query(&[("useSecretsManager", ¶m_value.to_string())]);
3645 }
3646 if let Some(ref param_value) = self_host {
3647 local_var_req_builder =
3648 local_var_req_builder.query(&[("selfHost", ¶m_value.to_string())]);
3649 }
3650 if let Some(ref param_value) = users_get_premium {
3651 local_var_req_builder =
3652 local_var_req_builder.query(&[("usersGetPremium", ¶m_value.to_string())]);
3653 }
3654 if let Some(ref param_value) = use_custom_permissions {
3655 local_var_req_builder =
3656 local_var_req_builder.query(&[("useCustomPermissions", ¶m_value.to_string())]);
3657 }
3658 if let Some(ref param_value) = storage {
3659 local_var_req_builder =
3660 local_var_req_builder.query(&[("storage", ¶m_value.to_string())]);
3661 }
3662 if let Some(ref param_value) = max_storage_gb {
3663 local_var_req_builder =
3664 local_var_req_builder.query(&[("maxStorageGb", ¶m_value.to_string())]);
3665 }
3666 if let Some(ref param_value) = gateway {
3667 local_var_req_builder =
3668 local_var_req_builder.query(&[("gateway", ¶m_value.to_string())]);
3669 }
3670 if let Some(ref param_value) = gateway_customer_id {
3671 local_var_req_builder =
3672 local_var_req_builder.query(&[("gatewayCustomerId", ¶m_value.to_string())]);
3673 }
3674 if let Some(ref param_value) = gateway_subscription_id {
3675 local_var_req_builder =
3676 local_var_req_builder.query(&[("gatewaySubscriptionId", ¶m_value.to_string())]);
3677 }
3678 if let Some(ref param_value) = reference_data {
3679 local_var_req_builder =
3680 local_var_req_builder.query(&[("referenceData", ¶m_value.to_string())]);
3681 }
3682 if let Some(ref param_value) = enabled {
3683 local_var_req_builder =
3684 local_var_req_builder.query(&[("enabled", ¶m_value.to_string())]);
3685 }
3686 if let Some(ref param_value) = license_key {
3687 local_var_req_builder =
3688 local_var_req_builder.query(&[("licenseKey", ¶m_value.to_string())]);
3689 }
3690 if let Some(ref param_value) = public_key {
3691 local_var_req_builder =
3692 local_var_req_builder.query(&[("publicKey", ¶m_value.to_string())]);
3693 }
3694 if let Some(ref param_value) = private_key {
3695 local_var_req_builder =
3696 local_var_req_builder.query(&[("privateKey", ¶m_value.to_string())]);
3697 }
3698 if let Some(ref param_value) = two_factor_providers {
3699 local_var_req_builder =
3700 local_var_req_builder.query(&[("twoFactorProviders", ¶m_value.to_string())]);
3701 }
3702 if let Some(ref param_value) = expiration_date {
3703 local_var_req_builder =
3704 local_var_req_builder.query(&[("expirationDate", ¶m_value.to_string())]);
3705 }
3706 if let Some(ref param_value) = creation_date {
3707 local_var_req_builder =
3708 local_var_req_builder.query(&[("creationDate", ¶m_value.to_string())]);
3709 }
3710 if let Some(ref param_value) = revision_date {
3711 local_var_req_builder =
3712 local_var_req_builder.query(&[("revisionDate", ¶m_value.to_string())]);
3713 }
3714 if let Some(ref param_value) = max_autoscale_seats {
3715 local_var_req_builder =
3716 local_var_req_builder.query(&[("maxAutoscaleSeats", ¶m_value.to_string())]);
3717 }
3718 if let Some(ref param_value) = owners_notified_of_autoscaling {
3719 local_var_req_builder = local_var_req_builder
3720 .query(&[("ownersNotifiedOfAutoscaling", ¶m_value.to_string())]);
3721 }
3722 if let Some(ref param_value) = status {
3723 local_var_req_builder =
3724 local_var_req_builder.query(&[("status", ¶m_value.to_string())]);
3725 }
3726 if let Some(ref param_value) = use_password_manager {
3727 local_var_req_builder =
3728 local_var_req_builder.query(&[("usePasswordManager", ¶m_value.to_string())]);
3729 }
3730 if let Some(ref param_value) = sm_seats {
3731 local_var_req_builder =
3732 local_var_req_builder.query(&[("smSeats", ¶m_value.to_string())]);
3733 }
3734 if let Some(ref param_value) = sm_service_accounts {
3735 local_var_req_builder =
3736 local_var_req_builder.query(&[("smServiceAccounts", ¶m_value.to_string())]);
3737 }
3738 if let Some(ref param_value) = max_autoscale_sm_seats {
3739 local_var_req_builder =
3740 local_var_req_builder.query(&[("maxAutoscaleSmSeats", ¶m_value.to_string())]);
3741 }
3742 if let Some(ref param_value) = max_autoscale_sm_service_accounts {
3743 local_var_req_builder = local_var_req_builder
3744 .query(&[("maxAutoscaleSmServiceAccounts", ¶m_value.to_string())]);
3745 }
3746 if let Some(ref param_value) = limit_collection_creation {
3747 local_var_req_builder = local_var_req_builder
3748 .query(&[("limitCollectionCreation", ¶m_value.to_string())]);
3749 }
3750 if let Some(ref param_value) = limit_collection_deletion {
3751 local_var_req_builder = local_var_req_builder
3752 .query(&[("limitCollectionDeletion", ¶m_value.to_string())]);
3753 }
3754 if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
3755 local_var_req_builder = local_var_req_builder.query(&[(
3756 "allowAdminAccessToAllCollectionItems",
3757 ¶m_value.to_string(),
3758 )]);
3759 }
3760 if let Some(ref param_value) = limit_item_deletion {
3761 local_var_req_builder =
3762 local_var_req_builder.query(&[("limitItemDeletion", ¶m_value.to_string())]);
3763 }
3764 if let Some(ref param_value) = use_risk_insights {
3765 local_var_req_builder =
3766 local_var_req_builder.query(&[("useRiskInsights", ¶m_value.to_string())]);
3767 }
3768 if let Some(ref param_value) = use_organization_domains {
3769 local_var_req_builder = local_var_req_builder
3770 .query(&[("useOrganizationDomains", ¶m_value.to_string())]);
3771 }
3772 if let Some(ref param_value) = use_admin_sponsored_families {
3773 local_var_req_builder = local_var_req_builder
3774 .query(&[("useAdminSponsoredFamilies", ¶m_value.to_string())]);
3775 }
3776 if let Some(ref param_value) = sync_seats {
3777 local_var_req_builder =
3778 local_var_req_builder.query(&[("syncSeats", ¶m_value.to_string())]);
3779 }
3780 if let Some(ref param_value) = use_automatic_user_confirmation {
3781 local_var_req_builder = local_var_req_builder
3782 .query(&[("useAutomaticUserConfirmation", ¶m_value.to_string())]);
3783 }
3784 if let Some(ref param_value) = use_phishing_blocker {
3785 local_var_req_builder =
3786 local_var_req_builder.query(&[("usePhishingBlocker", ¶m_value.to_string())]);
3787 }
3788 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
3789 local_var_req_builder = local_var_req_builder
3790 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
3791 }
3792 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
3793 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
3794 };
3795 local_var_req_builder = local_var_req_builder.json(&tokenized_payment_method_request);
3796
3797 let local_var_req = local_var_req_builder.build()?;
3798 let local_var_resp = local_var_client.execute(local_var_req).await?;
3799
3800 let local_var_status = local_var_resp.status();
3801 let local_var_content = local_var_resp.text().await?;
3802
3803 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
3804 Ok(())
3805 } else {
3806 let local_var_entity: Option<UpdatePaymentMethodError> =
3807 serde_json::from_str(&local_var_content).ok();
3808 let local_var_error = ResponseContent {
3809 status: local_var_status,
3810 content: local_var_content,
3811 entity: local_var_entity,
3812 };
3813 Err(Error::ResponseError(local_var_error))
3814 }
3815 }
3816}
3817
3818#[derive(Debug, Clone, Serialize, Deserialize)]
3820#[serde(untagged)]
3821pub enum AddCreditViaBitPayError {
3822 UnknownValue(serde_json::Value),
3823}
3824#[derive(Debug, Clone, Serialize, Deserialize)]
3826#[serde(untagged)]
3827pub enum GetBillingAddressError {
3828 UnknownValue(serde_json::Value),
3829}
3830#[derive(Debug, Clone, Serialize, Deserialize)]
3832#[serde(untagged)]
3833pub enum GetCreditError {
3834 UnknownValue(serde_json::Value),
3835}
3836#[derive(Debug, Clone, Serialize, Deserialize)]
3838#[serde(untagged)]
3839pub enum GetMetadataError {
3840 UnknownValue(serde_json::Value),
3841}
3842#[derive(Debug, Clone, Serialize, Deserialize)]
3844#[serde(untagged)]
3845pub enum GetPaymentMethodError {
3846 UnknownValue(serde_json::Value),
3847}
3848#[derive(Debug, Clone, Serialize, Deserialize)]
3850#[serde(untagged)]
3851pub enum GetWarningsError {
3852 UnknownValue(serde_json::Value),
3853}
3854#[derive(Debug, Clone, Serialize, Deserialize)]
3856#[serde(untagged)]
3857pub enum RestartSubscriptionError {
3858 UnknownValue(serde_json::Value),
3859}
3860#[derive(Debug, Clone, Serialize, Deserialize)]
3862#[serde(untagged)]
3863pub enum UpdateBillingAddressError {
3864 UnknownValue(serde_json::Value),
3865}
3866#[derive(Debug, Clone, Serialize, Deserialize)]
3868#[serde(untagged)]
3869pub enum UpdatePaymentMethodError {
3870 UnknownValue(serde_json::Value),
3871}