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