Skip to main content

bitwarden_api_api/apis/
organization_billing_v_next_api.rs

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