Skip to main content

bitwarden_api_api/apis/
preview_invoice_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 PreviewInvoiceApi: Send + Sync {
29    /// POST /billing/preview-invoice/organizations/{organizationId}/subscription/plan-change
30    async fn preview_organization_subscription_plan_change_tax<'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        preview_organization_subscription_plan_change_tax_request: Option<
96            models::PreviewOrganizationSubscriptionPlanChangeTaxRequest,
97        >,
98    ) -> Result<(), Error<PreviewOrganizationSubscriptionPlanChangeTaxError>>;
99
100    /// POST /billing/preview-invoice/organizations/subscriptions/purchase
101    async fn preview_organization_subscription_purchase_tax<'a>(
102        &self,
103        preview_organization_subscription_purchase_tax_request: Option<
104            models::PreviewOrganizationSubscriptionPurchaseTaxRequest,
105        >,
106    ) -> Result<(), Error<PreviewOrganizationSubscriptionPurchaseTaxError>>;
107
108    /// PUT /billing/preview-invoice/organizations/{organizationId}/subscription/update
109    async fn preview_organization_subscription_update_tax<'a>(
110        &self,
111        organization_id: &'a str,
112        id: Option<uuid::Uuid>,
113        identifier: Option<&'a str>,
114        name: Option<&'a str>,
115        business_name: Option<&'a str>,
116        business_address1: Option<&'a str>,
117        business_address2: Option<&'a str>,
118        business_address3: Option<&'a str>,
119        business_country: Option<&'a str>,
120        business_tax_number: Option<&'a str>,
121        billing_email: Option<&'a str>,
122        plan: Option<&'a str>,
123        plan_type: Option<models::PlanType>,
124        seats: Option<i32>,
125        max_collections: Option<i32>,
126        use_policies: Option<bool>,
127        use_sso: Option<bool>,
128        use_key_connector: Option<bool>,
129        use_scim: Option<bool>,
130        use_groups: Option<bool>,
131        use_directory: Option<bool>,
132        use_events: Option<bool>,
133        use_totp: Option<bool>,
134        use2fa: Option<bool>,
135        use_api: Option<bool>,
136        use_reset_password: Option<bool>,
137        use_secrets_manager: Option<bool>,
138        self_host: Option<bool>,
139        users_get_premium: Option<bool>,
140        use_custom_permissions: Option<bool>,
141        storage: Option<i64>,
142        max_storage_gb: Option<i32>,
143        gateway: Option<models::GatewayType>,
144        gateway_customer_id: Option<&'a str>,
145        gateway_subscription_id: Option<&'a str>,
146        reference_data: Option<&'a str>,
147        enabled: Option<bool>,
148        license_key: Option<&'a str>,
149        public_key: Option<&'a str>,
150        private_key: Option<&'a str>,
151        two_factor_providers: Option<&'a str>,
152        expiration_date: Option<String>,
153        creation_date: Option<String>,
154        revision_date: Option<String>,
155        max_autoscale_seats: Option<i32>,
156        owners_notified_of_autoscaling: Option<String>,
157        status: Option<models::OrganizationStatusType>,
158        use_password_manager: Option<bool>,
159        sm_seats: Option<i32>,
160        sm_service_accounts: Option<i32>,
161        max_autoscale_sm_seats: Option<i32>,
162        max_autoscale_sm_service_accounts: Option<i32>,
163        limit_collection_creation: Option<bool>,
164        limit_collection_deletion: Option<bool>,
165        allow_admin_access_to_all_collection_items: Option<bool>,
166        limit_item_deletion: Option<bool>,
167        use_risk_insights: Option<bool>,
168        use_organization_domains: Option<bool>,
169        use_admin_sponsored_families: Option<bool>,
170        sync_seats: Option<bool>,
171        use_automatic_user_confirmation: Option<bool>,
172        use_disable_sm_ads_for_users: Option<bool>,
173        use_phishing_blocker: Option<bool>,
174        preview_organization_subscription_update_tax_request: Option<
175            models::PreviewOrganizationSubscriptionUpdateTaxRequest,
176        >,
177    ) -> Result<(), Error<PreviewOrganizationSubscriptionUpdateTaxError>>;
178
179    /// POST /billing/preview-invoice/premium/subscriptions/purchase
180    async fn preview_premium_subscription_purchase_tax<'a>(
181        &self,
182        preview_premium_subscription_purchase_tax_request: Option<
183            models::PreviewPremiumSubscriptionPurchaseTaxRequest,
184        >,
185    ) -> Result<(), Error<PreviewPremiumSubscriptionPurchaseTaxError>>;
186
187    /// POST /billing/preview-invoice/premium/subscriptions/upgrade
188    async fn preview_premium_upgrade_proration<'a>(
189        &self,
190        email: &'a str,
191        security_stamp: &'a str,
192        api_key: &'a str,
193        id: Option<uuid::Uuid>,
194        name: Option<&'a str>,
195        email_verified: Option<bool>,
196        master_password: Option<&'a str>,
197        master_password_hint: Option<&'a str>,
198        culture: Option<&'a str>,
199        two_factor_providers: Option<&'a str>,
200        two_factor_recovery_code: Option<&'a str>,
201        equivalent_domains: Option<&'a str>,
202        excluded_global_equivalent_domains: Option<&'a str>,
203        account_revision_date: Option<String>,
204        key: Option<&'a str>,
205        public_key: Option<&'a str>,
206        private_key: Option<&'a str>,
207        signed_public_key: Option<&'a str>,
208        security_version: Option<i32>,
209        security_state: Option<&'a str>,
210        premium: Option<bool>,
211        premium_expiration_date: Option<String>,
212        renewal_reminder_date: Option<String>,
213        storage: Option<i64>,
214        max_storage_gb: Option<i32>,
215        gateway: Option<models::GatewayType>,
216        gateway_customer_id: Option<&'a str>,
217        gateway_subscription_id: Option<&'a str>,
218        reference_data: Option<&'a str>,
219        license_key: Option<&'a str>,
220        kdf: Option<models::KdfType>,
221        kdf_iterations: Option<i32>,
222        kdf_memory: Option<i32>,
223        kdf_parallelism: Option<i32>,
224        creation_date: Option<String>,
225        revision_date: Option<String>,
226        force_password_reset: Option<bool>,
227        uses_key_connector: Option<bool>,
228        failed_login_count: Option<i32>,
229        last_failed_login_date: Option<String>,
230        avatar_color: Option<&'a str>,
231        last_password_change_date: Option<String>,
232        last_kdf_change_date: Option<String>,
233        last_key_rotation_date: Option<String>,
234        last_email_change_date: Option<String>,
235        verify_devices: Option<bool>,
236        v2_upgrade_token: Option<&'a str>,
237        preview_premium_upgrade_proration_request: Option<
238            models::PreviewPremiumUpgradeProrationRequest,
239        >,
240    ) -> Result<(), Error<PreviewPremiumUpgradeProrationError>>;
241}
242
243pub struct PreviewInvoiceApiClient {
244    configuration: Arc<configuration::Configuration>,
245}
246
247impl PreviewInvoiceApiClient {
248    pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
249        Self { configuration }
250    }
251}
252
253#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
254#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
255impl PreviewInvoiceApi for PreviewInvoiceApiClient {
256    async fn preview_organization_subscription_plan_change_tax<'a>(
257        &self,
258        organization_id: &'a str,
259        id: Option<uuid::Uuid>,
260        identifier: Option<&'a str>,
261        name: Option<&'a str>,
262        business_name: Option<&'a str>,
263        business_address1: Option<&'a str>,
264        business_address2: Option<&'a str>,
265        business_address3: Option<&'a str>,
266        business_country: Option<&'a str>,
267        business_tax_number: Option<&'a str>,
268        billing_email: Option<&'a str>,
269        plan: Option<&'a str>,
270        plan_type: Option<models::PlanType>,
271        seats: Option<i32>,
272        max_collections: Option<i32>,
273        use_policies: Option<bool>,
274        use_sso: Option<bool>,
275        use_key_connector: Option<bool>,
276        use_scim: Option<bool>,
277        use_groups: Option<bool>,
278        use_directory: Option<bool>,
279        use_events: Option<bool>,
280        use_totp: Option<bool>,
281        use2fa: Option<bool>,
282        use_api: Option<bool>,
283        use_reset_password: Option<bool>,
284        use_secrets_manager: Option<bool>,
285        self_host: Option<bool>,
286        users_get_premium: Option<bool>,
287        use_custom_permissions: Option<bool>,
288        storage: Option<i64>,
289        max_storage_gb: Option<i32>,
290        gateway: Option<models::GatewayType>,
291        gateway_customer_id: Option<&'a str>,
292        gateway_subscription_id: Option<&'a str>,
293        reference_data: Option<&'a str>,
294        enabled: Option<bool>,
295        license_key: Option<&'a str>,
296        public_key: Option<&'a str>,
297        private_key: Option<&'a str>,
298        two_factor_providers: Option<&'a str>,
299        expiration_date: Option<String>,
300        creation_date: Option<String>,
301        revision_date: Option<String>,
302        max_autoscale_seats: Option<i32>,
303        owners_notified_of_autoscaling: Option<String>,
304        status: Option<models::OrganizationStatusType>,
305        use_password_manager: Option<bool>,
306        sm_seats: Option<i32>,
307        sm_service_accounts: Option<i32>,
308        max_autoscale_sm_seats: Option<i32>,
309        max_autoscale_sm_service_accounts: Option<i32>,
310        limit_collection_creation: Option<bool>,
311        limit_collection_deletion: Option<bool>,
312        allow_admin_access_to_all_collection_items: Option<bool>,
313        limit_item_deletion: Option<bool>,
314        use_risk_insights: Option<bool>,
315        use_organization_domains: Option<bool>,
316        use_admin_sponsored_families: Option<bool>,
317        sync_seats: Option<bool>,
318        use_automatic_user_confirmation: Option<bool>,
319        use_disable_sm_ads_for_users: Option<bool>,
320        use_phishing_blocker: Option<bool>,
321        preview_organization_subscription_plan_change_tax_request: Option<
322            models::PreviewOrganizationSubscriptionPlanChangeTaxRequest,
323        >,
324    ) -> Result<(), Error<PreviewOrganizationSubscriptionPlanChangeTaxError>> {
325        let local_var_configuration = &self.configuration;
326
327        let local_var_client = &local_var_configuration.client;
328
329        let local_var_uri_str = format!(
330            "{}/billing/preview-invoice/organizations/{organizationId}/subscription/plan-change",
331            local_var_configuration.base_path,
332            organizationId = crate::apis::urlencode(organization_id)
333        );
334        let mut local_var_req_builder =
335            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
336
337        if let Some(ref param_value) = id {
338            local_var_req_builder =
339                local_var_req_builder.query(&[("id", &param_value.to_string())]);
340        }
341        if let Some(ref param_value) = identifier {
342            local_var_req_builder =
343                local_var_req_builder.query(&[("identifier", &param_value.to_string())]);
344        }
345        if let Some(ref param_value) = name {
346            local_var_req_builder =
347                local_var_req_builder.query(&[("name", &param_value.to_string())]);
348        }
349        if let Some(ref param_value) = business_name {
350            local_var_req_builder =
351                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
352        }
353        if let Some(ref param_value) = business_address1 {
354            local_var_req_builder =
355                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
356        }
357        if let Some(ref param_value) = business_address2 {
358            local_var_req_builder =
359                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
360        }
361        if let Some(ref param_value) = business_address3 {
362            local_var_req_builder =
363                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
364        }
365        if let Some(ref param_value) = business_country {
366            local_var_req_builder =
367                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
368        }
369        if let Some(ref param_value) = business_tax_number {
370            local_var_req_builder =
371                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
372        }
373        if let Some(ref param_value) = billing_email {
374            local_var_req_builder =
375                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
376        }
377        if let Some(ref param_value) = plan {
378            local_var_req_builder =
379                local_var_req_builder.query(&[("plan", &param_value.to_string())]);
380        }
381        if let Some(ref param_value) = plan_type {
382            local_var_req_builder =
383                local_var_req_builder.query(&[("planType", &param_value.to_string())]);
384        }
385        if let Some(ref param_value) = seats {
386            local_var_req_builder =
387                local_var_req_builder.query(&[("seats", &param_value.to_string())]);
388        }
389        if let Some(ref param_value) = max_collections {
390            local_var_req_builder =
391                local_var_req_builder.query(&[("maxCollections", &param_value.to_string())]);
392        }
393        if let Some(ref param_value) = use_policies {
394            local_var_req_builder =
395                local_var_req_builder.query(&[("usePolicies", &param_value.to_string())]);
396        }
397        if let Some(ref param_value) = use_sso {
398            local_var_req_builder =
399                local_var_req_builder.query(&[("useSso", &param_value.to_string())]);
400        }
401        if let Some(ref param_value) = use_key_connector {
402            local_var_req_builder =
403                local_var_req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
404        }
405        if let Some(ref param_value) = use_scim {
406            local_var_req_builder =
407                local_var_req_builder.query(&[("useScim", &param_value.to_string())]);
408        }
409        if let Some(ref param_value) = use_groups {
410            local_var_req_builder =
411                local_var_req_builder.query(&[("useGroups", &param_value.to_string())]);
412        }
413        if let Some(ref param_value) = use_directory {
414            local_var_req_builder =
415                local_var_req_builder.query(&[("useDirectory", &param_value.to_string())]);
416        }
417        if let Some(ref param_value) = use_events {
418            local_var_req_builder =
419                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
420        }
421        if let Some(ref param_value) = use_totp {
422            local_var_req_builder =
423                local_var_req_builder.query(&[("useTotp", &param_value.to_string())]);
424        }
425        if let Some(ref param_value) = use2fa {
426            local_var_req_builder =
427                local_var_req_builder.query(&[("use2fa", &param_value.to_string())]);
428        }
429        if let Some(ref param_value) = use_api {
430            local_var_req_builder =
431                local_var_req_builder.query(&[("useApi", &param_value.to_string())]);
432        }
433        if let Some(ref param_value) = use_reset_password {
434            local_var_req_builder =
435                local_var_req_builder.query(&[("useResetPassword", &param_value.to_string())]);
436        }
437        if let Some(ref param_value) = use_secrets_manager {
438            local_var_req_builder =
439                local_var_req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
440        }
441        if let Some(ref param_value) = self_host {
442            local_var_req_builder =
443                local_var_req_builder.query(&[("selfHost", &param_value.to_string())]);
444        }
445        if let Some(ref param_value) = users_get_premium {
446            local_var_req_builder =
447                local_var_req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
448        }
449        if let Some(ref param_value) = use_custom_permissions {
450            local_var_req_builder =
451                local_var_req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
452        }
453        if let Some(ref param_value) = storage {
454            local_var_req_builder =
455                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
456        }
457        if let Some(ref param_value) = max_storage_gb {
458            local_var_req_builder =
459                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
460        }
461        if let Some(ref param_value) = gateway {
462            local_var_req_builder =
463                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
464        }
465        if let Some(ref param_value) = gateway_customer_id {
466            local_var_req_builder =
467                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
468        }
469        if let Some(ref param_value) = gateway_subscription_id {
470            local_var_req_builder =
471                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
472        }
473        if let Some(ref param_value) = reference_data {
474            local_var_req_builder =
475                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
476        }
477        if let Some(ref param_value) = enabled {
478            local_var_req_builder =
479                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
480        }
481        if let Some(ref param_value) = license_key {
482            local_var_req_builder =
483                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
484        }
485        if let Some(ref param_value) = public_key {
486            local_var_req_builder =
487                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
488        }
489        if let Some(ref param_value) = private_key {
490            local_var_req_builder =
491                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
492        }
493        if let Some(ref param_value) = two_factor_providers {
494            local_var_req_builder =
495                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
496        }
497        if let Some(ref param_value) = expiration_date {
498            local_var_req_builder =
499                local_var_req_builder.query(&[("expirationDate", &param_value.to_string())]);
500        }
501        if let Some(ref param_value) = creation_date {
502            local_var_req_builder =
503                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
504        }
505        if let Some(ref param_value) = revision_date {
506            local_var_req_builder =
507                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
508        }
509        if let Some(ref param_value) = max_autoscale_seats {
510            local_var_req_builder =
511                local_var_req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
512        }
513        if let Some(ref param_value) = owners_notified_of_autoscaling {
514            local_var_req_builder = local_var_req_builder
515                .query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
516        }
517        if let Some(ref param_value) = status {
518            local_var_req_builder =
519                local_var_req_builder.query(&[("status", &param_value.to_string())]);
520        }
521        if let Some(ref param_value) = use_password_manager {
522            local_var_req_builder =
523                local_var_req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
524        }
525        if let Some(ref param_value) = sm_seats {
526            local_var_req_builder =
527                local_var_req_builder.query(&[("smSeats", &param_value.to_string())]);
528        }
529        if let Some(ref param_value) = sm_service_accounts {
530            local_var_req_builder =
531                local_var_req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
532        }
533        if let Some(ref param_value) = max_autoscale_sm_seats {
534            local_var_req_builder =
535                local_var_req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
536        }
537        if let Some(ref param_value) = max_autoscale_sm_service_accounts {
538            local_var_req_builder = local_var_req_builder
539                .query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
540        }
541        if let Some(ref param_value) = limit_collection_creation {
542            local_var_req_builder = local_var_req_builder
543                .query(&[("limitCollectionCreation", &param_value.to_string())]);
544        }
545        if let Some(ref param_value) = limit_collection_deletion {
546            local_var_req_builder = local_var_req_builder
547                .query(&[("limitCollectionDeletion", &param_value.to_string())]);
548        }
549        if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
550            local_var_req_builder = local_var_req_builder.query(&[(
551                "allowAdminAccessToAllCollectionItems",
552                &param_value.to_string(),
553            )]);
554        }
555        if let Some(ref param_value) = limit_item_deletion {
556            local_var_req_builder =
557                local_var_req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
558        }
559        if let Some(ref param_value) = use_risk_insights {
560            local_var_req_builder =
561                local_var_req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
562        }
563        if let Some(ref param_value) = use_organization_domains {
564            local_var_req_builder = local_var_req_builder
565                .query(&[("useOrganizationDomains", &param_value.to_string())]);
566        }
567        if let Some(ref param_value) = use_admin_sponsored_families {
568            local_var_req_builder = local_var_req_builder
569                .query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
570        }
571        if let Some(ref param_value) = sync_seats {
572            local_var_req_builder =
573                local_var_req_builder.query(&[("syncSeats", &param_value.to_string())]);
574        }
575        if let Some(ref param_value) = use_automatic_user_confirmation {
576            local_var_req_builder = local_var_req_builder
577                .query(&[("useAutomaticUserConfirmation", &param_value.to_string())]);
578        }
579        if let Some(ref param_value) = use_disable_sm_ads_for_users {
580            local_var_req_builder = local_var_req_builder
581                .query(&[("useDisableSmAdsForUsers", &param_value.to_string())]);
582        }
583        if let Some(ref param_value) = use_phishing_blocker {
584            local_var_req_builder =
585                local_var_req_builder.query(&[("usePhishingBlocker", &param_value.to_string())]);
586        }
587        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
588        local_var_req_builder =
589            local_var_req_builder.json(&preview_organization_subscription_plan_change_tax_request);
590
591        let local_var_resp = local_var_req_builder.send().await?;
592
593        let local_var_status = local_var_resp.status();
594        let local_var_content = local_var_resp.text().await?;
595
596        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
597            Ok(())
598        } else {
599            let local_var_entity: Option<PreviewOrganizationSubscriptionPlanChangeTaxError> =
600                serde_json::from_str(&local_var_content).ok();
601            let local_var_error = ResponseContent {
602                status: local_var_status,
603                content: local_var_content,
604                entity: local_var_entity,
605            };
606            Err(Error::ResponseError(local_var_error))
607        }
608    }
609
610    async fn preview_organization_subscription_purchase_tax<'a>(
611        &self,
612        preview_organization_subscription_purchase_tax_request: Option<
613            models::PreviewOrganizationSubscriptionPurchaseTaxRequest,
614        >,
615    ) -> Result<(), Error<PreviewOrganizationSubscriptionPurchaseTaxError>> {
616        let local_var_configuration = &self.configuration;
617
618        let local_var_client = &local_var_configuration.client;
619
620        let local_var_uri_str = format!(
621            "{}/billing/preview-invoice/organizations/subscriptions/purchase",
622            local_var_configuration.base_path
623        );
624        let mut local_var_req_builder =
625            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
626
627        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
628        local_var_req_builder =
629            local_var_req_builder.json(&preview_organization_subscription_purchase_tax_request);
630
631        let local_var_resp = local_var_req_builder.send().await?;
632
633        let local_var_status = local_var_resp.status();
634        let local_var_content = local_var_resp.text().await?;
635
636        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
637            Ok(())
638        } else {
639            let local_var_entity: Option<PreviewOrganizationSubscriptionPurchaseTaxError> =
640                serde_json::from_str(&local_var_content).ok();
641            let local_var_error = ResponseContent {
642                status: local_var_status,
643                content: local_var_content,
644                entity: local_var_entity,
645            };
646            Err(Error::ResponseError(local_var_error))
647        }
648    }
649
650    async fn preview_organization_subscription_update_tax<'a>(
651        &self,
652        organization_id: &'a str,
653        id: Option<uuid::Uuid>,
654        identifier: Option<&'a str>,
655        name: Option<&'a str>,
656        business_name: Option<&'a str>,
657        business_address1: Option<&'a str>,
658        business_address2: Option<&'a str>,
659        business_address3: Option<&'a str>,
660        business_country: Option<&'a str>,
661        business_tax_number: Option<&'a str>,
662        billing_email: Option<&'a str>,
663        plan: Option<&'a str>,
664        plan_type: Option<models::PlanType>,
665        seats: Option<i32>,
666        max_collections: Option<i32>,
667        use_policies: Option<bool>,
668        use_sso: Option<bool>,
669        use_key_connector: Option<bool>,
670        use_scim: Option<bool>,
671        use_groups: Option<bool>,
672        use_directory: Option<bool>,
673        use_events: Option<bool>,
674        use_totp: Option<bool>,
675        use2fa: Option<bool>,
676        use_api: Option<bool>,
677        use_reset_password: Option<bool>,
678        use_secrets_manager: Option<bool>,
679        self_host: Option<bool>,
680        users_get_premium: Option<bool>,
681        use_custom_permissions: Option<bool>,
682        storage: Option<i64>,
683        max_storage_gb: Option<i32>,
684        gateway: Option<models::GatewayType>,
685        gateway_customer_id: Option<&'a str>,
686        gateway_subscription_id: Option<&'a str>,
687        reference_data: Option<&'a str>,
688        enabled: Option<bool>,
689        license_key: Option<&'a str>,
690        public_key: Option<&'a str>,
691        private_key: Option<&'a str>,
692        two_factor_providers: Option<&'a str>,
693        expiration_date: Option<String>,
694        creation_date: Option<String>,
695        revision_date: Option<String>,
696        max_autoscale_seats: Option<i32>,
697        owners_notified_of_autoscaling: Option<String>,
698        status: Option<models::OrganizationStatusType>,
699        use_password_manager: Option<bool>,
700        sm_seats: Option<i32>,
701        sm_service_accounts: Option<i32>,
702        max_autoscale_sm_seats: Option<i32>,
703        max_autoscale_sm_service_accounts: Option<i32>,
704        limit_collection_creation: Option<bool>,
705        limit_collection_deletion: Option<bool>,
706        allow_admin_access_to_all_collection_items: Option<bool>,
707        limit_item_deletion: Option<bool>,
708        use_risk_insights: Option<bool>,
709        use_organization_domains: Option<bool>,
710        use_admin_sponsored_families: Option<bool>,
711        sync_seats: Option<bool>,
712        use_automatic_user_confirmation: Option<bool>,
713        use_disable_sm_ads_for_users: Option<bool>,
714        use_phishing_blocker: Option<bool>,
715        preview_organization_subscription_update_tax_request: Option<
716            models::PreviewOrganizationSubscriptionUpdateTaxRequest,
717        >,
718    ) -> Result<(), Error<PreviewOrganizationSubscriptionUpdateTaxError>> {
719        let local_var_configuration = &self.configuration;
720
721        let local_var_client = &local_var_configuration.client;
722
723        let local_var_uri_str = format!(
724            "{}/billing/preview-invoice/organizations/{organizationId}/subscription/update",
725            local_var_configuration.base_path,
726            organizationId = crate::apis::urlencode(organization_id)
727        );
728        let mut local_var_req_builder =
729            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
730
731        if let Some(ref param_value) = id {
732            local_var_req_builder =
733                local_var_req_builder.query(&[("id", &param_value.to_string())]);
734        }
735        if let Some(ref param_value) = identifier {
736            local_var_req_builder =
737                local_var_req_builder.query(&[("identifier", &param_value.to_string())]);
738        }
739        if let Some(ref param_value) = name {
740            local_var_req_builder =
741                local_var_req_builder.query(&[("name", &param_value.to_string())]);
742        }
743        if let Some(ref param_value) = business_name {
744            local_var_req_builder =
745                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
746        }
747        if let Some(ref param_value) = business_address1 {
748            local_var_req_builder =
749                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
750        }
751        if let Some(ref param_value) = business_address2 {
752            local_var_req_builder =
753                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
754        }
755        if let Some(ref param_value) = business_address3 {
756            local_var_req_builder =
757                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
758        }
759        if let Some(ref param_value) = business_country {
760            local_var_req_builder =
761                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
762        }
763        if let Some(ref param_value) = business_tax_number {
764            local_var_req_builder =
765                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
766        }
767        if let Some(ref param_value) = billing_email {
768            local_var_req_builder =
769                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
770        }
771        if let Some(ref param_value) = plan {
772            local_var_req_builder =
773                local_var_req_builder.query(&[("plan", &param_value.to_string())]);
774        }
775        if let Some(ref param_value) = plan_type {
776            local_var_req_builder =
777                local_var_req_builder.query(&[("planType", &param_value.to_string())]);
778        }
779        if let Some(ref param_value) = seats {
780            local_var_req_builder =
781                local_var_req_builder.query(&[("seats", &param_value.to_string())]);
782        }
783        if let Some(ref param_value) = max_collections {
784            local_var_req_builder =
785                local_var_req_builder.query(&[("maxCollections", &param_value.to_string())]);
786        }
787        if let Some(ref param_value) = use_policies {
788            local_var_req_builder =
789                local_var_req_builder.query(&[("usePolicies", &param_value.to_string())]);
790        }
791        if let Some(ref param_value) = use_sso {
792            local_var_req_builder =
793                local_var_req_builder.query(&[("useSso", &param_value.to_string())]);
794        }
795        if let Some(ref param_value) = use_key_connector {
796            local_var_req_builder =
797                local_var_req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
798        }
799        if let Some(ref param_value) = use_scim {
800            local_var_req_builder =
801                local_var_req_builder.query(&[("useScim", &param_value.to_string())]);
802        }
803        if let Some(ref param_value) = use_groups {
804            local_var_req_builder =
805                local_var_req_builder.query(&[("useGroups", &param_value.to_string())]);
806        }
807        if let Some(ref param_value) = use_directory {
808            local_var_req_builder =
809                local_var_req_builder.query(&[("useDirectory", &param_value.to_string())]);
810        }
811        if let Some(ref param_value) = use_events {
812            local_var_req_builder =
813                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
814        }
815        if let Some(ref param_value) = use_totp {
816            local_var_req_builder =
817                local_var_req_builder.query(&[("useTotp", &param_value.to_string())]);
818        }
819        if let Some(ref param_value) = use2fa {
820            local_var_req_builder =
821                local_var_req_builder.query(&[("use2fa", &param_value.to_string())]);
822        }
823        if let Some(ref param_value) = use_api {
824            local_var_req_builder =
825                local_var_req_builder.query(&[("useApi", &param_value.to_string())]);
826        }
827        if let Some(ref param_value) = use_reset_password {
828            local_var_req_builder =
829                local_var_req_builder.query(&[("useResetPassword", &param_value.to_string())]);
830        }
831        if let Some(ref param_value) = use_secrets_manager {
832            local_var_req_builder =
833                local_var_req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
834        }
835        if let Some(ref param_value) = self_host {
836            local_var_req_builder =
837                local_var_req_builder.query(&[("selfHost", &param_value.to_string())]);
838        }
839        if let Some(ref param_value) = users_get_premium {
840            local_var_req_builder =
841                local_var_req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
842        }
843        if let Some(ref param_value) = use_custom_permissions {
844            local_var_req_builder =
845                local_var_req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
846        }
847        if let Some(ref param_value) = storage {
848            local_var_req_builder =
849                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
850        }
851        if let Some(ref param_value) = max_storage_gb {
852            local_var_req_builder =
853                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
854        }
855        if let Some(ref param_value) = gateway {
856            local_var_req_builder =
857                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
858        }
859        if let Some(ref param_value) = gateway_customer_id {
860            local_var_req_builder =
861                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
862        }
863        if let Some(ref param_value) = gateway_subscription_id {
864            local_var_req_builder =
865                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
866        }
867        if let Some(ref param_value) = reference_data {
868            local_var_req_builder =
869                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
870        }
871        if let Some(ref param_value) = enabled {
872            local_var_req_builder =
873                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
874        }
875        if let Some(ref param_value) = license_key {
876            local_var_req_builder =
877                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
878        }
879        if let Some(ref param_value) = public_key {
880            local_var_req_builder =
881                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
882        }
883        if let Some(ref param_value) = private_key {
884            local_var_req_builder =
885                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
886        }
887        if let Some(ref param_value) = two_factor_providers {
888            local_var_req_builder =
889                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
890        }
891        if let Some(ref param_value) = expiration_date {
892            local_var_req_builder =
893                local_var_req_builder.query(&[("expirationDate", &param_value.to_string())]);
894        }
895        if let Some(ref param_value) = creation_date {
896            local_var_req_builder =
897                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
898        }
899        if let Some(ref param_value) = revision_date {
900            local_var_req_builder =
901                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
902        }
903        if let Some(ref param_value) = max_autoscale_seats {
904            local_var_req_builder =
905                local_var_req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
906        }
907        if let Some(ref param_value) = owners_notified_of_autoscaling {
908            local_var_req_builder = local_var_req_builder
909                .query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
910        }
911        if let Some(ref param_value) = status {
912            local_var_req_builder =
913                local_var_req_builder.query(&[("status", &param_value.to_string())]);
914        }
915        if let Some(ref param_value) = use_password_manager {
916            local_var_req_builder =
917                local_var_req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
918        }
919        if let Some(ref param_value) = sm_seats {
920            local_var_req_builder =
921                local_var_req_builder.query(&[("smSeats", &param_value.to_string())]);
922        }
923        if let Some(ref param_value) = sm_service_accounts {
924            local_var_req_builder =
925                local_var_req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
926        }
927        if let Some(ref param_value) = max_autoscale_sm_seats {
928            local_var_req_builder =
929                local_var_req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
930        }
931        if let Some(ref param_value) = max_autoscale_sm_service_accounts {
932            local_var_req_builder = local_var_req_builder
933                .query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
934        }
935        if let Some(ref param_value) = limit_collection_creation {
936            local_var_req_builder = local_var_req_builder
937                .query(&[("limitCollectionCreation", &param_value.to_string())]);
938        }
939        if let Some(ref param_value) = limit_collection_deletion {
940            local_var_req_builder = local_var_req_builder
941                .query(&[("limitCollectionDeletion", &param_value.to_string())]);
942        }
943        if let Some(ref param_value) = allow_admin_access_to_all_collection_items {
944            local_var_req_builder = local_var_req_builder.query(&[(
945                "allowAdminAccessToAllCollectionItems",
946                &param_value.to_string(),
947            )]);
948        }
949        if let Some(ref param_value) = limit_item_deletion {
950            local_var_req_builder =
951                local_var_req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
952        }
953        if let Some(ref param_value) = use_risk_insights {
954            local_var_req_builder =
955                local_var_req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
956        }
957        if let Some(ref param_value) = use_organization_domains {
958            local_var_req_builder = local_var_req_builder
959                .query(&[("useOrganizationDomains", &param_value.to_string())]);
960        }
961        if let Some(ref param_value) = use_admin_sponsored_families {
962            local_var_req_builder = local_var_req_builder
963                .query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
964        }
965        if let Some(ref param_value) = sync_seats {
966            local_var_req_builder =
967                local_var_req_builder.query(&[("syncSeats", &param_value.to_string())]);
968        }
969        if let Some(ref param_value) = use_automatic_user_confirmation {
970            local_var_req_builder = local_var_req_builder
971                .query(&[("useAutomaticUserConfirmation", &param_value.to_string())]);
972        }
973        if let Some(ref param_value) = use_disable_sm_ads_for_users {
974            local_var_req_builder = local_var_req_builder
975                .query(&[("useDisableSmAdsForUsers", &param_value.to_string())]);
976        }
977        if let Some(ref param_value) = use_phishing_blocker {
978            local_var_req_builder =
979                local_var_req_builder.query(&[("usePhishingBlocker", &param_value.to_string())]);
980        }
981        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
982        local_var_req_builder =
983            local_var_req_builder.json(&preview_organization_subscription_update_tax_request);
984
985        let local_var_resp = local_var_req_builder.send().await?;
986
987        let local_var_status = local_var_resp.status();
988        let local_var_content = local_var_resp.text().await?;
989
990        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
991            Ok(())
992        } else {
993            let local_var_entity: Option<PreviewOrganizationSubscriptionUpdateTaxError> =
994                serde_json::from_str(&local_var_content).ok();
995            let local_var_error = ResponseContent {
996                status: local_var_status,
997                content: local_var_content,
998                entity: local_var_entity,
999            };
1000            Err(Error::ResponseError(local_var_error))
1001        }
1002    }
1003
1004    async fn preview_premium_subscription_purchase_tax<'a>(
1005        &self,
1006        preview_premium_subscription_purchase_tax_request: Option<
1007            models::PreviewPremiumSubscriptionPurchaseTaxRequest,
1008        >,
1009    ) -> Result<(), Error<PreviewPremiumSubscriptionPurchaseTaxError>> {
1010        let local_var_configuration = &self.configuration;
1011
1012        let local_var_client = &local_var_configuration.client;
1013
1014        let local_var_uri_str = format!(
1015            "{}/billing/preview-invoice/premium/subscriptions/purchase",
1016            local_var_configuration.base_path
1017        );
1018        let mut local_var_req_builder =
1019            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1020
1021        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
1022        local_var_req_builder =
1023            local_var_req_builder.json(&preview_premium_subscription_purchase_tax_request);
1024
1025        let local_var_resp = local_var_req_builder.send().await?;
1026
1027        let local_var_status = local_var_resp.status();
1028        let local_var_content = local_var_resp.text().await?;
1029
1030        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1031            Ok(())
1032        } else {
1033            let local_var_entity: Option<PreviewPremiumSubscriptionPurchaseTaxError> =
1034                serde_json::from_str(&local_var_content).ok();
1035            let local_var_error = ResponseContent {
1036                status: local_var_status,
1037                content: local_var_content,
1038                entity: local_var_entity,
1039            };
1040            Err(Error::ResponseError(local_var_error))
1041        }
1042    }
1043
1044    async fn preview_premium_upgrade_proration<'a>(
1045        &self,
1046        email: &'a str,
1047        security_stamp: &'a str,
1048        api_key: &'a str,
1049        id: Option<uuid::Uuid>,
1050        name: Option<&'a str>,
1051        email_verified: Option<bool>,
1052        master_password: Option<&'a str>,
1053        master_password_hint: Option<&'a str>,
1054        culture: Option<&'a str>,
1055        two_factor_providers: Option<&'a str>,
1056        two_factor_recovery_code: Option<&'a str>,
1057        equivalent_domains: Option<&'a str>,
1058        excluded_global_equivalent_domains: Option<&'a str>,
1059        account_revision_date: Option<String>,
1060        key: Option<&'a str>,
1061        public_key: Option<&'a str>,
1062        private_key: Option<&'a str>,
1063        signed_public_key: Option<&'a str>,
1064        security_version: Option<i32>,
1065        security_state: Option<&'a str>,
1066        premium: Option<bool>,
1067        premium_expiration_date: Option<String>,
1068        renewal_reminder_date: Option<String>,
1069        storage: Option<i64>,
1070        max_storage_gb: Option<i32>,
1071        gateway: Option<models::GatewayType>,
1072        gateway_customer_id: Option<&'a str>,
1073        gateway_subscription_id: Option<&'a str>,
1074        reference_data: Option<&'a str>,
1075        license_key: Option<&'a str>,
1076        kdf: Option<models::KdfType>,
1077        kdf_iterations: Option<i32>,
1078        kdf_memory: Option<i32>,
1079        kdf_parallelism: Option<i32>,
1080        creation_date: Option<String>,
1081        revision_date: Option<String>,
1082        force_password_reset: Option<bool>,
1083        uses_key_connector: Option<bool>,
1084        failed_login_count: Option<i32>,
1085        last_failed_login_date: Option<String>,
1086        avatar_color: Option<&'a str>,
1087        last_password_change_date: Option<String>,
1088        last_kdf_change_date: Option<String>,
1089        last_key_rotation_date: Option<String>,
1090        last_email_change_date: Option<String>,
1091        verify_devices: Option<bool>,
1092        v2_upgrade_token: Option<&'a str>,
1093        preview_premium_upgrade_proration_request: Option<
1094            models::PreviewPremiumUpgradeProrationRequest,
1095        >,
1096    ) -> Result<(), Error<PreviewPremiumUpgradeProrationError>> {
1097        let local_var_configuration = &self.configuration;
1098
1099        let local_var_client = &local_var_configuration.client;
1100
1101        let local_var_uri_str = format!(
1102            "{}/billing/preview-invoice/premium/subscriptions/upgrade",
1103            local_var_configuration.base_path
1104        );
1105        let mut local_var_req_builder =
1106            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1107
1108        if let Some(ref param_value) = id {
1109            local_var_req_builder =
1110                local_var_req_builder.query(&[("id", &param_value.to_string())]);
1111        }
1112        if let Some(ref param_value) = name {
1113            local_var_req_builder =
1114                local_var_req_builder.query(&[("name", &param_value.to_string())]);
1115        }
1116        local_var_req_builder = local_var_req_builder.query(&[("email", &email.to_string())]);
1117        if let Some(ref param_value) = email_verified {
1118            local_var_req_builder =
1119                local_var_req_builder.query(&[("emailVerified", &param_value.to_string())]);
1120        }
1121        if let Some(ref param_value) = master_password {
1122            local_var_req_builder =
1123                local_var_req_builder.query(&[("masterPassword", &param_value.to_string())]);
1124        }
1125        if let Some(ref param_value) = master_password_hint {
1126            local_var_req_builder =
1127                local_var_req_builder.query(&[("masterPasswordHint", &param_value.to_string())]);
1128        }
1129        if let Some(ref param_value) = culture {
1130            local_var_req_builder =
1131                local_var_req_builder.query(&[("culture", &param_value.to_string())]);
1132        }
1133        local_var_req_builder =
1134            local_var_req_builder.query(&[("securityStamp", &security_stamp.to_string())]);
1135        if let Some(ref param_value) = two_factor_providers {
1136            local_var_req_builder =
1137                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
1138        }
1139        if let Some(ref param_value) = two_factor_recovery_code {
1140            local_var_req_builder =
1141                local_var_req_builder.query(&[("twoFactorRecoveryCode", &param_value.to_string())]);
1142        }
1143        if let Some(ref param_value) = equivalent_domains {
1144            local_var_req_builder =
1145                local_var_req_builder.query(&[("equivalentDomains", &param_value.to_string())]);
1146        }
1147        if let Some(ref param_value) = excluded_global_equivalent_domains {
1148            local_var_req_builder = local_var_req_builder
1149                .query(&[("excludedGlobalEquivalentDomains", &param_value.to_string())]);
1150        }
1151        if let Some(ref param_value) = account_revision_date {
1152            local_var_req_builder =
1153                local_var_req_builder.query(&[("accountRevisionDate", &param_value.to_string())]);
1154        }
1155        if let Some(ref param_value) = key {
1156            local_var_req_builder =
1157                local_var_req_builder.query(&[("key", &param_value.to_string())]);
1158        }
1159        if let Some(ref param_value) = public_key {
1160            local_var_req_builder =
1161                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
1162        }
1163        if let Some(ref param_value) = private_key {
1164            local_var_req_builder =
1165                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
1166        }
1167        if let Some(ref param_value) = signed_public_key {
1168            local_var_req_builder =
1169                local_var_req_builder.query(&[("signedPublicKey", &param_value.to_string())]);
1170        }
1171        if let Some(ref param_value) = security_version {
1172            local_var_req_builder =
1173                local_var_req_builder.query(&[("securityVersion", &param_value.to_string())]);
1174        }
1175        if let Some(ref param_value) = security_state {
1176            local_var_req_builder =
1177                local_var_req_builder.query(&[("securityState", &param_value.to_string())]);
1178        }
1179        if let Some(ref param_value) = premium {
1180            local_var_req_builder =
1181                local_var_req_builder.query(&[("premium", &param_value.to_string())]);
1182        }
1183        if let Some(ref param_value) = premium_expiration_date {
1184            local_var_req_builder =
1185                local_var_req_builder.query(&[("premiumExpirationDate", &param_value.to_string())]);
1186        }
1187        if let Some(ref param_value) = renewal_reminder_date {
1188            local_var_req_builder =
1189                local_var_req_builder.query(&[("renewalReminderDate", &param_value.to_string())]);
1190        }
1191        if let Some(ref param_value) = storage {
1192            local_var_req_builder =
1193                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
1194        }
1195        if let Some(ref param_value) = max_storage_gb {
1196            local_var_req_builder =
1197                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
1198        }
1199        if let Some(ref param_value) = gateway {
1200            local_var_req_builder =
1201                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
1202        }
1203        if let Some(ref param_value) = gateway_customer_id {
1204            local_var_req_builder =
1205                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1206        }
1207        if let Some(ref param_value) = gateway_subscription_id {
1208            local_var_req_builder =
1209                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1210        }
1211        if let Some(ref param_value) = reference_data {
1212            local_var_req_builder =
1213                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
1214        }
1215        if let Some(ref param_value) = license_key {
1216            local_var_req_builder =
1217                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
1218        }
1219        local_var_req_builder = local_var_req_builder.query(&[("apiKey", &api_key.to_string())]);
1220        if let Some(ref param_value) = kdf {
1221            local_var_req_builder =
1222                local_var_req_builder.query(&[("kdf", &param_value.to_string())]);
1223        }
1224        if let Some(ref param_value) = kdf_iterations {
1225            local_var_req_builder =
1226                local_var_req_builder.query(&[("kdfIterations", &param_value.to_string())]);
1227        }
1228        if let Some(ref param_value) = kdf_memory {
1229            local_var_req_builder =
1230                local_var_req_builder.query(&[("kdfMemory", &param_value.to_string())]);
1231        }
1232        if let Some(ref param_value) = kdf_parallelism {
1233            local_var_req_builder =
1234                local_var_req_builder.query(&[("kdfParallelism", &param_value.to_string())]);
1235        }
1236        if let Some(ref param_value) = creation_date {
1237            local_var_req_builder =
1238                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
1239        }
1240        if let Some(ref param_value) = revision_date {
1241            local_var_req_builder =
1242                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
1243        }
1244        if let Some(ref param_value) = force_password_reset {
1245            local_var_req_builder =
1246                local_var_req_builder.query(&[("forcePasswordReset", &param_value.to_string())]);
1247        }
1248        if let Some(ref param_value) = uses_key_connector {
1249            local_var_req_builder =
1250                local_var_req_builder.query(&[("usesKeyConnector", &param_value.to_string())]);
1251        }
1252        if let Some(ref param_value) = failed_login_count {
1253            local_var_req_builder =
1254                local_var_req_builder.query(&[("failedLoginCount", &param_value.to_string())]);
1255        }
1256        if let Some(ref param_value) = last_failed_login_date {
1257            local_var_req_builder =
1258                local_var_req_builder.query(&[("lastFailedLoginDate", &param_value.to_string())]);
1259        }
1260        if let Some(ref param_value) = avatar_color {
1261            local_var_req_builder =
1262                local_var_req_builder.query(&[("avatarColor", &param_value.to_string())]);
1263        }
1264        if let Some(ref param_value) = last_password_change_date {
1265            local_var_req_builder = local_var_req_builder
1266                .query(&[("lastPasswordChangeDate", &param_value.to_string())]);
1267        }
1268        if let Some(ref param_value) = last_kdf_change_date {
1269            local_var_req_builder =
1270                local_var_req_builder.query(&[("lastKdfChangeDate", &param_value.to_string())]);
1271        }
1272        if let Some(ref param_value) = last_key_rotation_date {
1273            local_var_req_builder =
1274                local_var_req_builder.query(&[("lastKeyRotationDate", &param_value.to_string())]);
1275        }
1276        if let Some(ref param_value) = last_email_change_date {
1277            local_var_req_builder =
1278                local_var_req_builder.query(&[("lastEmailChangeDate", &param_value.to_string())]);
1279        }
1280        if let Some(ref param_value) = verify_devices {
1281            local_var_req_builder =
1282                local_var_req_builder.query(&[("verifyDevices", &param_value.to_string())]);
1283        }
1284        if let Some(ref param_value) = v2_upgrade_token {
1285            local_var_req_builder =
1286                local_var_req_builder.query(&[("v2UpgradeToken", &param_value.to_string())]);
1287        }
1288        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
1289        local_var_req_builder =
1290            local_var_req_builder.json(&preview_premium_upgrade_proration_request);
1291
1292        let local_var_resp = local_var_req_builder.send().await?;
1293
1294        let local_var_status = local_var_resp.status();
1295        let local_var_content = local_var_resp.text().await?;
1296
1297        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1298            Ok(())
1299        } else {
1300            let local_var_entity: Option<PreviewPremiumUpgradeProrationError> =
1301                serde_json::from_str(&local_var_content).ok();
1302            let local_var_error = ResponseContent {
1303                status: local_var_status,
1304                content: local_var_content,
1305                entity: local_var_entity,
1306            };
1307            Err(Error::ResponseError(local_var_error))
1308        }
1309    }
1310}
1311
1312/// struct for typed errors of method
1313/// [`PreviewInvoiceApi::preview_organization_subscription_plan_change_tax`]
1314#[derive(Debug, Clone, Serialize, Deserialize)]
1315#[serde(untagged)]
1316pub enum PreviewOrganizationSubscriptionPlanChangeTaxError {
1317    UnknownValue(serde_json::Value),
1318}
1319/// struct for typed errors of method
1320/// [`PreviewInvoiceApi::preview_organization_subscription_purchase_tax`]
1321#[derive(Debug, Clone, Serialize, Deserialize)]
1322#[serde(untagged)]
1323pub enum PreviewOrganizationSubscriptionPurchaseTaxError {
1324    UnknownValue(serde_json::Value),
1325}
1326/// struct for typed errors of method
1327/// [`PreviewInvoiceApi::preview_organization_subscription_update_tax`]
1328#[derive(Debug, Clone, Serialize, Deserialize)]
1329#[serde(untagged)]
1330pub enum PreviewOrganizationSubscriptionUpdateTaxError {
1331    UnknownValue(serde_json::Value),
1332}
1333/// struct for typed errors of method
1334/// [`PreviewInvoiceApi::preview_premium_subscription_purchase_tax`]
1335#[derive(Debug, Clone, Serialize, Deserialize)]
1336#[serde(untagged)]
1337pub enum PreviewPremiumSubscriptionPurchaseTaxError {
1338    UnknownValue(serde_json::Value),
1339}
1340/// struct for typed errors of method [`PreviewInvoiceApi::preview_premium_upgrade_proration`]
1341#[derive(Debug, Clone, Serialize, Deserialize)]
1342#[serde(untagged)]
1343pub enum PreviewPremiumUpgradeProrationError {
1344    UnknownValue(serde_json::Value),
1345}