bitwarden_api_api/apis/
account_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::{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 AccountBillingVNextApi: Send + Sync {
29    /// POST /account/billing/vnext/credit/bitpay
30    async fn add_credit_via_bit_pay<'a>(
31        &self,
32        email: &'a str,
33        security_stamp: &'a str,
34        api_key: &'a str,
35        id: Option<uuid::Uuid>,
36        name: Option<&'a str>,
37        email_verified: Option<bool>,
38        master_password: Option<&'a str>,
39        master_password_hint: Option<&'a str>,
40        culture: Option<&'a str>,
41        two_factor_providers: Option<&'a str>,
42        two_factor_recovery_code: Option<&'a str>,
43        equivalent_domains: Option<&'a str>,
44        excluded_global_equivalent_domains: Option<&'a str>,
45        account_revision_date: Option<String>,
46        key: Option<&'a str>,
47        public_key: Option<&'a str>,
48        private_key: Option<&'a str>,
49        signed_public_key: Option<&'a str>,
50        security_version: Option<i32>,
51        security_state: Option<&'a str>,
52        premium: Option<bool>,
53        premium_expiration_date: Option<String>,
54        renewal_reminder_date: Option<String>,
55        storage: Option<i64>,
56        max_storage_gb: Option<i32>,
57        gateway: Option<models::GatewayType>,
58        gateway_customer_id: Option<&'a str>,
59        gateway_subscription_id: Option<&'a str>,
60        reference_data: Option<&'a str>,
61        license_key: Option<&'a str>,
62        kdf: Option<models::KdfType>,
63        kdf_iterations: Option<i32>,
64        kdf_memory: Option<i32>,
65        kdf_parallelism: Option<i32>,
66        creation_date: Option<String>,
67        revision_date: Option<String>,
68        force_password_reset: Option<bool>,
69        uses_key_connector: Option<bool>,
70        failed_login_count: Option<i32>,
71        last_failed_login_date: Option<String>,
72        avatar_color: Option<&'a str>,
73        last_password_change_date: Option<String>,
74        last_kdf_change_date: Option<String>,
75        last_key_rotation_date: Option<String>,
76        last_email_change_date: Option<String>,
77        verify_devices: Option<bool>,
78        bit_pay_credit_request: Option<models::BitPayCreditRequest>,
79    ) -> Result<(), Error<AddCreditViaBitPayError>>;
80
81    /// POST /account/billing/vnext/subscription
82    async fn create_subscription<'a>(
83        &self,
84        email: &'a str,
85        security_stamp: &'a str,
86        api_key: &'a str,
87        id: Option<uuid::Uuid>,
88        name: Option<&'a str>,
89        email_verified: Option<bool>,
90        master_password: Option<&'a str>,
91        master_password_hint: Option<&'a str>,
92        culture: Option<&'a str>,
93        two_factor_providers: Option<&'a str>,
94        two_factor_recovery_code: Option<&'a str>,
95        equivalent_domains: Option<&'a str>,
96        excluded_global_equivalent_domains: Option<&'a str>,
97        account_revision_date: Option<String>,
98        key: Option<&'a str>,
99        public_key: Option<&'a str>,
100        private_key: Option<&'a str>,
101        signed_public_key: Option<&'a str>,
102        security_version: Option<i32>,
103        security_state: Option<&'a str>,
104        premium: Option<bool>,
105        premium_expiration_date: Option<String>,
106        renewal_reminder_date: Option<String>,
107        storage: Option<i64>,
108        max_storage_gb: Option<i32>,
109        gateway: Option<models::GatewayType>,
110        gateway_customer_id: Option<&'a str>,
111        gateway_subscription_id: Option<&'a str>,
112        reference_data: Option<&'a str>,
113        license_key: Option<&'a str>,
114        kdf: Option<models::KdfType>,
115        kdf_iterations: Option<i32>,
116        kdf_memory: Option<i32>,
117        kdf_parallelism: Option<i32>,
118        creation_date: Option<String>,
119        revision_date: Option<String>,
120        force_password_reset: Option<bool>,
121        uses_key_connector: Option<bool>,
122        failed_login_count: Option<i32>,
123        last_failed_login_date: Option<String>,
124        avatar_color: Option<&'a str>,
125        last_password_change_date: Option<String>,
126        last_kdf_change_date: Option<String>,
127        last_key_rotation_date: Option<String>,
128        last_email_change_date: Option<String>,
129        verify_devices: Option<bool>,
130        premium_cloud_hosted_subscription_request: Option<
131            models::PremiumCloudHostedSubscriptionRequest,
132        >,
133    ) -> Result<(), Error<CreateSubscriptionError>>;
134
135    /// GET /account/billing/vnext/credit
136    async fn get_credit<'a>(
137        &self,
138        email: &'a str,
139        security_stamp: &'a str,
140        api_key: &'a str,
141        id: Option<uuid::Uuid>,
142        name: Option<&'a str>,
143        email_verified: Option<bool>,
144        master_password: Option<&'a str>,
145        master_password_hint: Option<&'a str>,
146        culture: Option<&'a str>,
147        two_factor_providers: Option<&'a str>,
148        two_factor_recovery_code: Option<&'a str>,
149        equivalent_domains: Option<&'a str>,
150        excluded_global_equivalent_domains: Option<&'a str>,
151        account_revision_date: Option<String>,
152        key: Option<&'a str>,
153        public_key: Option<&'a str>,
154        private_key: Option<&'a str>,
155        signed_public_key: Option<&'a str>,
156        security_version: Option<i32>,
157        security_state: Option<&'a str>,
158        premium: Option<bool>,
159        premium_expiration_date: Option<String>,
160        renewal_reminder_date: Option<String>,
161        storage: Option<i64>,
162        max_storage_gb: Option<i32>,
163        gateway: Option<models::GatewayType>,
164        gateway_customer_id: Option<&'a str>,
165        gateway_subscription_id: Option<&'a str>,
166        reference_data: Option<&'a str>,
167        license_key: Option<&'a str>,
168        kdf: Option<models::KdfType>,
169        kdf_iterations: Option<i32>,
170        kdf_memory: Option<i32>,
171        kdf_parallelism: Option<i32>,
172        creation_date: Option<String>,
173        revision_date: Option<String>,
174        force_password_reset: Option<bool>,
175        uses_key_connector: Option<bool>,
176        failed_login_count: Option<i32>,
177        last_failed_login_date: Option<String>,
178        avatar_color: Option<&'a str>,
179        last_password_change_date: Option<String>,
180        last_kdf_change_date: Option<String>,
181        last_key_rotation_date: Option<String>,
182        last_email_change_date: Option<String>,
183        verify_devices: Option<bool>,
184    ) -> Result<(), Error<GetCreditError>>;
185
186    /// GET /account/billing/vnext/license
187    async fn get_license<'a>(
188        &self,
189        email: &'a str,
190        security_stamp: &'a str,
191        api_key: &'a str,
192        id: Option<uuid::Uuid>,
193        name: Option<&'a str>,
194        email_verified: Option<bool>,
195        master_password: Option<&'a str>,
196        master_password_hint: Option<&'a str>,
197        culture: Option<&'a str>,
198        two_factor_providers: Option<&'a str>,
199        two_factor_recovery_code: Option<&'a str>,
200        equivalent_domains: Option<&'a str>,
201        excluded_global_equivalent_domains: Option<&'a str>,
202        account_revision_date: Option<String>,
203        key: Option<&'a str>,
204        public_key: Option<&'a str>,
205        private_key: Option<&'a str>,
206        signed_public_key: Option<&'a str>,
207        security_version: Option<i32>,
208        security_state: Option<&'a str>,
209        premium: Option<bool>,
210        premium_expiration_date: Option<String>,
211        renewal_reminder_date: Option<String>,
212        storage: Option<i64>,
213        max_storage_gb: Option<i32>,
214        gateway: Option<models::GatewayType>,
215        gateway_customer_id: Option<&'a str>,
216        gateway_subscription_id: Option<&'a str>,
217        reference_data: Option<&'a str>,
218        license_key: Option<&'a str>,
219        kdf: Option<models::KdfType>,
220        kdf_iterations: Option<i32>,
221        kdf_memory: Option<i32>,
222        kdf_parallelism: Option<i32>,
223        creation_date: Option<String>,
224        revision_date: Option<String>,
225        force_password_reset: Option<bool>,
226        uses_key_connector: Option<bool>,
227        failed_login_count: Option<i32>,
228        last_failed_login_date: Option<String>,
229        avatar_color: Option<&'a str>,
230        last_password_change_date: Option<String>,
231        last_kdf_change_date: Option<String>,
232        last_key_rotation_date: Option<String>,
233        last_email_change_date: Option<String>,
234        verify_devices: Option<bool>,
235    ) -> Result<(), Error<GetLicenseError>>;
236
237    /// GET /account/billing/vnext/payment-method
238    async fn get_payment_method<'a>(
239        &self,
240        email: &'a str,
241        security_stamp: &'a str,
242        api_key: &'a str,
243        id: Option<uuid::Uuid>,
244        name: Option<&'a str>,
245        email_verified: Option<bool>,
246        master_password: Option<&'a str>,
247        master_password_hint: Option<&'a str>,
248        culture: Option<&'a str>,
249        two_factor_providers: Option<&'a str>,
250        two_factor_recovery_code: Option<&'a str>,
251        equivalent_domains: Option<&'a str>,
252        excluded_global_equivalent_domains: Option<&'a str>,
253        account_revision_date: Option<String>,
254        key: Option<&'a str>,
255        public_key: Option<&'a str>,
256        private_key: Option<&'a str>,
257        signed_public_key: Option<&'a str>,
258        security_version: Option<i32>,
259        security_state: Option<&'a str>,
260        premium: Option<bool>,
261        premium_expiration_date: Option<String>,
262        renewal_reminder_date: Option<String>,
263        storage: Option<i64>,
264        max_storage_gb: Option<i32>,
265        gateway: Option<models::GatewayType>,
266        gateway_customer_id: Option<&'a str>,
267        gateway_subscription_id: Option<&'a str>,
268        reference_data: Option<&'a str>,
269        license_key: Option<&'a str>,
270        kdf: Option<models::KdfType>,
271        kdf_iterations: Option<i32>,
272        kdf_memory: Option<i32>,
273        kdf_parallelism: Option<i32>,
274        creation_date: Option<String>,
275        revision_date: Option<String>,
276        force_password_reset: Option<bool>,
277        uses_key_connector: Option<bool>,
278        failed_login_count: Option<i32>,
279        last_failed_login_date: Option<String>,
280        avatar_color: Option<&'a str>,
281        last_password_change_date: Option<String>,
282        last_kdf_change_date: Option<String>,
283        last_key_rotation_date: Option<String>,
284        last_email_change_date: Option<String>,
285        verify_devices: Option<bool>,
286    ) -> Result<(), Error<GetPaymentMethodError>>;
287
288    /// PUT /account/billing/vnext/payment-method
289    async fn update_payment_method<'a>(
290        &self,
291        email: &'a str,
292        security_stamp: &'a str,
293        api_key: &'a str,
294        id: Option<uuid::Uuid>,
295        name: Option<&'a str>,
296        email_verified: Option<bool>,
297        master_password: Option<&'a str>,
298        master_password_hint: Option<&'a str>,
299        culture: Option<&'a str>,
300        two_factor_providers: Option<&'a str>,
301        two_factor_recovery_code: Option<&'a str>,
302        equivalent_domains: Option<&'a str>,
303        excluded_global_equivalent_domains: Option<&'a str>,
304        account_revision_date: Option<String>,
305        key: Option<&'a str>,
306        public_key: Option<&'a str>,
307        private_key: Option<&'a str>,
308        signed_public_key: Option<&'a str>,
309        security_version: Option<i32>,
310        security_state: Option<&'a str>,
311        premium: Option<bool>,
312        premium_expiration_date: Option<String>,
313        renewal_reminder_date: Option<String>,
314        storage: Option<i64>,
315        max_storage_gb: Option<i32>,
316        gateway: Option<models::GatewayType>,
317        gateway_customer_id: Option<&'a str>,
318        gateway_subscription_id: Option<&'a str>,
319        reference_data: Option<&'a str>,
320        license_key: Option<&'a str>,
321        kdf: Option<models::KdfType>,
322        kdf_iterations: Option<i32>,
323        kdf_memory: Option<i32>,
324        kdf_parallelism: Option<i32>,
325        creation_date: Option<String>,
326        revision_date: Option<String>,
327        force_password_reset: Option<bool>,
328        uses_key_connector: Option<bool>,
329        failed_login_count: Option<i32>,
330        last_failed_login_date: Option<String>,
331        avatar_color: Option<&'a str>,
332        last_password_change_date: Option<String>,
333        last_kdf_change_date: Option<String>,
334        last_key_rotation_date: Option<String>,
335        last_email_change_date: Option<String>,
336        verify_devices: Option<bool>,
337        tokenized_payment_method_request: Option<models::TokenizedPaymentMethodRequest>,
338    ) -> Result<(), Error<UpdatePaymentMethodError>>;
339}
340
341pub struct AccountBillingVNextApiClient {
342    configuration: Arc<configuration::Configuration>,
343}
344
345impl AccountBillingVNextApiClient {
346    pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
347        Self { configuration }
348    }
349}
350
351#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
352#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
353impl AccountBillingVNextApi for AccountBillingVNextApiClient {
354    async fn add_credit_via_bit_pay<'a>(
355        &self,
356        email: &'a str,
357        security_stamp: &'a str,
358        api_key: &'a str,
359        id: Option<uuid::Uuid>,
360        name: Option<&'a str>,
361        email_verified: Option<bool>,
362        master_password: Option<&'a str>,
363        master_password_hint: Option<&'a str>,
364        culture: Option<&'a str>,
365        two_factor_providers: Option<&'a str>,
366        two_factor_recovery_code: Option<&'a str>,
367        equivalent_domains: Option<&'a str>,
368        excluded_global_equivalent_domains: Option<&'a str>,
369        account_revision_date: Option<String>,
370        key: Option<&'a str>,
371        public_key: Option<&'a str>,
372        private_key: Option<&'a str>,
373        signed_public_key: Option<&'a str>,
374        security_version: Option<i32>,
375        security_state: Option<&'a str>,
376        premium: Option<bool>,
377        premium_expiration_date: Option<String>,
378        renewal_reminder_date: Option<String>,
379        storage: Option<i64>,
380        max_storage_gb: Option<i32>,
381        gateway: Option<models::GatewayType>,
382        gateway_customer_id: Option<&'a str>,
383        gateway_subscription_id: Option<&'a str>,
384        reference_data: Option<&'a str>,
385        license_key: Option<&'a str>,
386        kdf: Option<models::KdfType>,
387        kdf_iterations: Option<i32>,
388        kdf_memory: Option<i32>,
389        kdf_parallelism: Option<i32>,
390        creation_date: Option<String>,
391        revision_date: Option<String>,
392        force_password_reset: Option<bool>,
393        uses_key_connector: Option<bool>,
394        failed_login_count: Option<i32>,
395        last_failed_login_date: Option<String>,
396        avatar_color: Option<&'a str>,
397        last_password_change_date: Option<String>,
398        last_kdf_change_date: Option<String>,
399        last_key_rotation_date: Option<String>,
400        last_email_change_date: Option<String>,
401        verify_devices: Option<bool>,
402        bit_pay_credit_request: Option<models::BitPayCreditRequest>,
403    ) -> Result<(), Error<AddCreditViaBitPayError>> {
404        let local_var_configuration = &self.configuration;
405
406        let local_var_client = &local_var_configuration.client;
407
408        let local_var_uri_str = format!(
409            "{}/account/billing/vnext/credit/bitpay",
410            local_var_configuration.base_path
411        );
412        let mut local_var_req_builder =
413            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
414
415        if let Some(ref param_value) = id {
416            local_var_req_builder =
417                local_var_req_builder.query(&[("id", &param_value.to_string())]);
418        }
419        if let Some(ref param_value) = name {
420            local_var_req_builder =
421                local_var_req_builder.query(&[("name", &param_value.to_string())]);
422        }
423        local_var_req_builder = local_var_req_builder.query(&[("email", &email.to_string())]);
424        if let Some(ref param_value) = email_verified {
425            local_var_req_builder =
426                local_var_req_builder.query(&[("emailVerified", &param_value.to_string())]);
427        }
428        if let Some(ref param_value) = master_password {
429            local_var_req_builder =
430                local_var_req_builder.query(&[("masterPassword", &param_value.to_string())]);
431        }
432        if let Some(ref param_value) = master_password_hint {
433            local_var_req_builder =
434                local_var_req_builder.query(&[("masterPasswordHint", &param_value.to_string())]);
435        }
436        if let Some(ref param_value) = culture {
437            local_var_req_builder =
438                local_var_req_builder.query(&[("culture", &param_value.to_string())]);
439        }
440        local_var_req_builder =
441            local_var_req_builder.query(&[("securityStamp", &security_stamp.to_string())]);
442        if let Some(ref param_value) = two_factor_providers {
443            local_var_req_builder =
444                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
445        }
446        if let Some(ref param_value) = two_factor_recovery_code {
447            local_var_req_builder =
448                local_var_req_builder.query(&[("twoFactorRecoveryCode", &param_value.to_string())]);
449        }
450        if let Some(ref param_value) = equivalent_domains {
451            local_var_req_builder =
452                local_var_req_builder.query(&[("equivalentDomains", &param_value.to_string())]);
453        }
454        if let Some(ref param_value) = excluded_global_equivalent_domains {
455            local_var_req_builder = local_var_req_builder
456                .query(&[("excludedGlobalEquivalentDomains", &param_value.to_string())]);
457        }
458        if let Some(ref param_value) = account_revision_date {
459            local_var_req_builder =
460                local_var_req_builder.query(&[("accountRevisionDate", &param_value.to_string())]);
461        }
462        if let Some(ref param_value) = key {
463            local_var_req_builder =
464                local_var_req_builder.query(&[("key", &param_value.to_string())]);
465        }
466        if let Some(ref param_value) = public_key {
467            local_var_req_builder =
468                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
469        }
470        if let Some(ref param_value) = private_key {
471            local_var_req_builder =
472                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
473        }
474        if let Some(ref param_value) = signed_public_key {
475            local_var_req_builder =
476                local_var_req_builder.query(&[("signedPublicKey", &param_value.to_string())]);
477        }
478        if let Some(ref param_value) = security_version {
479            local_var_req_builder =
480                local_var_req_builder.query(&[("securityVersion", &param_value.to_string())]);
481        }
482        if let Some(ref param_value) = security_state {
483            local_var_req_builder =
484                local_var_req_builder.query(&[("securityState", &param_value.to_string())]);
485        }
486        if let Some(ref param_value) = premium {
487            local_var_req_builder =
488                local_var_req_builder.query(&[("premium", &param_value.to_string())]);
489        }
490        if let Some(ref param_value) = premium_expiration_date {
491            local_var_req_builder =
492                local_var_req_builder.query(&[("premiumExpirationDate", &param_value.to_string())]);
493        }
494        if let Some(ref param_value) = renewal_reminder_date {
495            local_var_req_builder =
496                local_var_req_builder.query(&[("renewalReminderDate", &param_value.to_string())]);
497        }
498        if let Some(ref param_value) = storage {
499            local_var_req_builder =
500                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
501        }
502        if let Some(ref param_value) = max_storage_gb {
503            local_var_req_builder =
504                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
505        }
506        if let Some(ref param_value) = gateway {
507            local_var_req_builder =
508                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
509        }
510        if let Some(ref param_value) = gateway_customer_id {
511            local_var_req_builder =
512                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
513        }
514        if let Some(ref param_value) = gateway_subscription_id {
515            local_var_req_builder =
516                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
517        }
518        if let Some(ref param_value) = reference_data {
519            local_var_req_builder =
520                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
521        }
522        if let Some(ref param_value) = license_key {
523            local_var_req_builder =
524                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
525        }
526        local_var_req_builder = local_var_req_builder.query(&[("apiKey", &api_key.to_string())]);
527        if let Some(ref param_value) = kdf {
528            local_var_req_builder =
529                local_var_req_builder.query(&[("kdf", &param_value.to_string())]);
530        }
531        if let Some(ref param_value) = kdf_iterations {
532            local_var_req_builder =
533                local_var_req_builder.query(&[("kdfIterations", &param_value.to_string())]);
534        }
535        if let Some(ref param_value) = kdf_memory {
536            local_var_req_builder =
537                local_var_req_builder.query(&[("kdfMemory", &param_value.to_string())]);
538        }
539        if let Some(ref param_value) = kdf_parallelism {
540            local_var_req_builder =
541                local_var_req_builder.query(&[("kdfParallelism", &param_value.to_string())]);
542        }
543        if let Some(ref param_value) = creation_date {
544            local_var_req_builder =
545                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
546        }
547        if let Some(ref param_value) = revision_date {
548            local_var_req_builder =
549                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
550        }
551        if let Some(ref param_value) = force_password_reset {
552            local_var_req_builder =
553                local_var_req_builder.query(&[("forcePasswordReset", &param_value.to_string())]);
554        }
555        if let Some(ref param_value) = uses_key_connector {
556            local_var_req_builder =
557                local_var_req_builder.query(&[("usesKeyConnector", &param_value.to_string())]);
558        }
559        if let Some(ref param_value) = failed_login_count {
560            local_var_req_builder =
561                local_var_req_builder.query(&[("failedLoginCount", &param_value.to_string())]);
562        }
563        if let Some(ref param_value) = last_failed_login_date {
564            local_var_req_builder =
565                local_var_req_builder.query(&[("lastFailedLoginDate", &param_value.to_string())]);
566        }
567        if let Some(ref param_value) = avatar_color {
568            local_var_req_builder =
569                local_var_req_builder.query(&[("avatarColor", &param_value.to_string())]);
570        }
571        if let Some(ref param_value) = last_password_change_date {
572            local_var_req_builder = local_var_req_builder
573                .query(&[("lastPasswordChangeDate", &param_value.to_string())]);
574        }
575        if let Some(ref param_value) = last_kdf_change_date {
576            local_var_req_builder =
577                local_var_req_builder.query(&[("lastKdfChangeDate", &param_value.to_string())]);
578        }
579        if let Some(ref param_value) = last_key_rotation_date {
580            local_var_req_builder =
581                local_var_req_builder.query(&[("lastKeyRotationDate", &param_value.to_string())]);
582        }
583        if let Some(ref param_value) = last_email_change_date {
584            local_var_req_builder =
585                local_var_req_builder.query(&[("lastEmailChangeDate", &param_value.to_string())]);
586        }
587        if let Some(ref param_value) = verify_devices {
588            local_var_req_builder =
589                local_var_req_builder.query(&[("verifyDevices", &param_value.to_string())]);
590        }
591        if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
592            local_var_req_builder = local_var_req_builder
593                .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
594        }
595        if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
596            local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
597        };
598        local_var_req_builder = local_var_req_builder.json(&bit_pay_credit_request);
599
600        let local_var_req = local_var_req_builder.build()?;
601        let local_var_resp = local_var_client.execute(local_var_req).await?;
602
603        let local_var_status = local_var_resp.status();
604        let local_var_content = local_var_resp.text().await?;
605
606        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
607            Ok(())
608        } else {
609            let local_var_entity: Option<AddCreditViaBitPayError> =
610                serde_json::from_str(&local_var_content).ok();
611            let local_var_error = ResponseContent {
612                status: local_var_status,
613                content: local_var_content,
614                entity: local_var_entity,
615            };
616            Err(Error::ResponseError(local_var_error))
617        }
618    }
619
620    async fn create_subscription<'a>(
621        &self,
622        email: &'a str,
623        security_stamp: &'a str,
624        api_key: &'a str,
625        id: Option<uuid::Uuid>,
626        name: Option<&'a str>,
627        email_verified: Option<bool>,
628        master_password: Option<&'a str>,
629        master_password_hint: Option<&'a str>,
630        culture: Option<&'a str>,
631        two_factor_providers: Option<&'a str>,
632        two_factor_recovery_code: Option<&'a str>,
633        equivalent_domains: Option<&'a str>,
634        excluded_global_equivalent_domains: Option<&'a str>,
635        account_revision_date: Option<String>,
636        key: Option<&'a str>,
637        public_key: Option<&'a str>,
638        private_key: Option<&'a str>,
639        signed_public_key: Option<&'a str>,
640        security_version: Option<i32>,
641        security_state: Option<&'a str>,
642        premium: Option<bool>,
643        premium_expiration_date: Option<String>,
644        renewal_reminder_date: Option<String>,
645        storage: Option<i64>,
646        max_storage_gb: Option<i32>,
647        gateway: Option<models::GatewayType>,
648        gateway_customer_id: Option<&'a str>,
649        gateway_subscription_id: Option<&'a str>,
650        reference_data: Option<&'a str>,
651        license_key: Option<&'a str>,
652        kdf: Option<models::KdfType>,
653        kdf_iterations: Option<i32>,
654        kdf_memory: Option<i32>,
655        kdf_parallelism: Option<i32>,
656        creation_date: Option<String>,
657        revision_date: Option<String>,
658        force_password_reset: Option<bool>,
659        uses_key_connector: Option<bool>,
660        failed_login_count: Option<i32>,
661        last_failed_login_date: Option<String>,
662        avatar_color: Option<&'a str>,
663        last_password_change_date: Option<String>,
664        last_kdf_change_date: Option<String>,
665        last_key_rotation_date: Option<String>,
666        last_email_change_date: Option<String>,
667        verify_devices: Option<bool>,
668        premium_cloud_hosted_subscription_request: Option<
669            models::PremiumCloudHostedSubscriptionRequest,
670        >,
671    ) -> Result<(), Error<CreateSubscriptionError>> {
672        let local_var_configuration = &self.configuration;
673
674        let local_var_client = &local_var_configuration.client;
675
676        let local_var_uri_str = format!(
677            "{}/account/billing/vnext/subscription",
678            local_var_configuration.base_path
679        );
680        let mut local_var_req_builder =
681            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
682
683        if let Some(ref param_value) = id {
684            local_var_req_builder =
685                local_var_req_builder.query(&[("id", &param_value.to_string())]);
686        }
687        if let Some(ref param_value) = name {
688            local_var_req_builder =
689                local_var_req_builder.query(&[("name", &param_value.to_string())]);
690        }
691        local_var_req_builder = local_var_req_builder.query(&[("email", &email.to_string())]);
692        if let Some(ref param_value) = email_verified {
693            local_var_req_builder =
694                local_var_req_builder.query(&[("emailVerified", &param_value.to_string())]);
695        }
696        if let Some(ref param_value) = master_password {
697            local_var_req_builder =
698                local_var_req_builder.query(&[("masterPassword", &param_value.to_string())]);
699        }
700        if let Some(ref param_value) = master_password_hint {
701            local_var_req_builder =
702                local_var_req_builder.query(&[("masterPasswordHint", &param_value.to_string())]);
703        }
704        if let Some(ref param_value) = culture {
705            local_var_req_builder =
706                local_var_req_builder.query(&[("culture", &param_value.to_string())]);
707        }
708        local_var_req_builder =
709            local_var_req_builder.query(&[("securityStamp", &security_stamp.to_string())]);
710        if let Some(ref param_value) = two_factor_providers {
711            local_var_req_builder =
712                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
713        }
714        if let Some(ref param_value) = two_factor_recovery_code {
715            local_var_req_builder =
716                local_var_req_builder.query(&[("twoFactorRecoveryCode", &param_value.to_string())]);
717        }
718        if let Some(ref param_value) = equivalent_domains {
719            local_var_req_builder =
720                local_var_req_builder.query(&[("equivalentDomains", &param_value.to_string())]);
721        }
722        if let Some(ref param_value) = excluded_global_equivalent_domains {
723            local_var_req_builder = local_var_req_builder
724                .query(&[("excludedGlobalEquivalentDomains", &param_value.to_string())]);
725        }
726        if let Some(ref param_value) = account_revision_date {
727            local_var_req_builder =
728                local_var_req_builder.query(&[("accountRevisionDate", &param_value.to_string())]);
729        }
730        if let Some(ref param_value) = key {
731            local_var_req_builder =
732                local_var_req_builder.query(&[("key", &param_value.to_string())]);
733        }
734        if let Some(ref param_value) = public_key {
735            local_var_req_builder =
736                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
737        }
738        if let Some(ref param_value) = private_key {
739            local_var_req_builder =
740                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
741        }
742        if let Some(ref param_value) = signed_public_key {
743            local_var_req_builder =
744                local_var_req_builder.query(&[("signedPublicKey", &param_value.to_string())]);
745        }
746        if let Some(ref param_value) = security_version {
747            local_var_req_builder =
748                local_var_req_builder.query(&[("securityVersion", &param_value.to_string())]);
749        }
750        if let Some(ref param_value) = security_state {
751            local_var_req_builder =
752                local_var_req_builder.query(&[("securityState", &param_value.to_string())]);
753        }
754        if let Some(ref param_value) = premium {
755            local_var_req_builder =
756                local_var_req_builder.query(&[("premium", &param_value.to_string())]);
757        }
758        if let Some(ref param_value) = premium_expiration_date {
759            local_var_req_builder =
760                local_var_req_builder.query(&[("premiumExpirationDate", &param_value.to_string())]);
761        }
762        if let Some(ref param_value) = renewal_reminder_date {
763            local_var_req_builder =
764                local_var_req_builder.query(&[("renewalReminderDate", &param_value.to_string())]);
765        }
766        if let Some(ref param_value) = storage {
767            local_var_req_builder =
768                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
769        }
770        if let Some(ref param_value) = max_storage_gb {
771            local_var_req_builder =
772                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
773        }
774        if let Some(ref param_value) = gateway {
775            local_var_req_builder =
776                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
777        }
778        if let Some(ref param_value) = gateway_customer_id {
779            local_var_req_builder =
780                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
781        }
782        if let Some(ref param_value) = gateway_subscription_id {
783            local_var_req_builder =
784                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
785        }
786        if let Some(ref param_value) = reference_data {
787            local_var_req_builder =
788                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
789        }
790        if let Some(ref param_value) = license_key {
791            local_var_req_builder =
792                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
793        }
794        local_var_req_builder = local_var_req_builder.query(&[("apiKey", &api_key.to_string())]);
795        if let Some(ref param_value) = kdf {
796            local_var_req_builder =
797                local_var_req_builder.query(&[("kdf", &param_value.to_string())]);
798        }
799        if let Some(ref param_value) = kdf_iterations {
800            local_var_req_builder =
801                local_var_req_builder.query(&[("kdfIterations", &param_value.to_string())]);
802        }
803        if let Some(ref param_value) = kdf_memory {
804            local_var_req_builder =
805                local_var_req_builder.query(&[("kdfMemory", &param_value.to_string())]);
806        }
807        if let Some(ref param_value) = kdf_parallelism {
808            local_var_req_builder =
809                local_var_req_builder.query(&[("kdfParallelism", &param_value.to_string())]);
810        }
811        if let Some(ref param_value) = creation_date {
812            local_var_req_builder =
813                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
814        }
815        if let Some(ref param_value) = revision_date {
816            local_var_req_builder =
817                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
818        }
819        if let Some(ref param_value) = force_password_reset {
820            local_var_req_builder =
821                local_var_req_builder.query(&[("forcePasswordReset", &param_value.to_string())]);
822        }
823        if let Some(ref param_value) = uses_key_connector {
824            local_var_req_builder =
825                local_var_req_builder.query(&[("usesKeyConnector", &param_value.to_string())]);
826        }
827        if let Some(ref param_value) = failed_login_count {
828            local_var_req_builder =
829                local_var_req_builder.query(&[("failedLoginCount", &param_value.to_string())]);
830        }
831        if let Some(ref param_value) = last_failed_login_date {
832            local_var_req_builder =
833                local_var_req_builder.query(&[("lastFailedLoginDate", &param_value.to_string())]);
834        }
835        if let Some(ref param_value) = avatar_color {
836            local_var_req_builder =
837                local_var_req_builder.query(&[("avatarColor", &param_value.to_string())]);
838        }
839        if let Some(ref param_value) = last_password_change_date {
840            local_var_req_builder = local_var_req_builder
841                .query(&[("lastPasswordChangeDate", &param_value.to_string())]);
842        }
843        if let Some(ref param_value) = last_kdf_change_date {
844            local_var_req_builder =
845                local_var_req_builder.query(&[("lastKdfChangeDate", &param_value.to_string())]);
846        }
847        if let Some(ref param_value) = last_key_rotation_date {
848            local_var_req_builder =
849                local_var_req_builder.query(&[("lastKeyRotationDate", &param_value.to_string())]);
850        }
851        if let Some(ref param_value) = last_email_change_date {
852            local_var_req_builder =
853                local_var_req_builder.query(&[("lastEmailChangeDate", &param_value.to_string())]);
854        }
855        if let Some(ref param_value) = verify_devices {
856            local_var_req_builder =
857                local_var_req_builder.query(&[("verifyDevices", &param_value.to_string())]);
858        }
859        if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
860            local_var_req_builder = local_var_req_builder
861                .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
862        }
863        if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
864            local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
865        };
866        local_var_req_builder =
867            local_var_req_builder.json(&premium_cloud_hosted_subscription_request);
868
869        let local_var_req = local_var_req_builder.build()?;
870        let local_var_resp = local_var_client.execute(local_var_req).await?;
871
872        let local_var_status = local_var_resp.status();
873        let local_var_content = local_var_resp.text().await?;
874
875        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
876            Ok(())
877        } else {
878            let local_var_entity: Option<CreateSubscriptionError> =
879                serde_json::from_str(&local_var_content).ok();
880            let local_var_error = ResponseContent {
881                status: local_var_status,
882                content: local_var_content,
883                entity: local_var_entity,
884            };
885            Err(Error::ResponseError(local_var_error))
886        }
887    }
888
889    async fn get_credit<'a>(
890        &self,
891        email: &'a str,
892        security_stamp: &'a str,
893        api_key: &'a str,
894        id: Option<uuid::Uuid>,
895        name: Option<&'a str>,
896        email_verified: Option<bool>,
897        master_password: Option<&'a str>,
898        master_password_hint: Option<&'a str>,
899        culture: Option<&'a str>,
900        two_factor_providers: Option<&'a str>,
901        two_factor_recovery_code: Option<&'a str>,
902        equivalent_domains: Option<&'a str>,
903        excluded_global_equivalent_domains: Option<&'a str>,
904        account_revision_date: Option<String>,
905        key: Option<&'a str>,
906        public_key: Option<&'a str>,
907        private_key: Option<&'a str>,
908        signed_public_key: Option<&'a str>,
909        security_version: Option<i32>,
910        security_state: Option<&'a str>,
911        premium: Option<bool>,
912        premium_expiration_date: Option<String>,
913        renewal_reminder_date: Option<String>,
914        storage: Option<i64>,
915        max_storage_gb: Option<i32>,
916        gateway: Option<models::GatewayType>,
917        gateway_customer_id: Option<&'a str>,
918        gateway_subscription_id: Option<&'a str>,
919        reference_data: Option<&'a str>,
920        license_key: Option<&'a str>,
921        kdf: Option<models::KdfType>,
922        kdf_iterations: Option<i32>,
923        kdf_memory: Option<i32>,
924        kdf_parallelism: Option<i32>,
925        creation_date: Option<String>,
926        revision_date: Option<String>,
927        force_password_reset: Option<bool>,
928        uses_key_connector: Option<bool>,
929        failed_login_count: Option<i32>,
930        last_failed_login_date: Option<String>,
931        avatar_color: Option<&'a str>,
932        last_password_change_date: Option<String>,
933        last_kdf_change_date: Option<String>,
934        last_key_rotation_date: Option<String>,
935        last_email_change_date: Option<String>,
936        verify_devices: Option<bool>,
937    ) -> Result<(), Error<GetCreditError>> {
938        let local_var_configuration = &self.configuration;
939
940        let local_var_client = &local_var_configuration.client;
941
942        let local_var_uri_str = format!(
943            "{}/account/billing/vnext/credit",
944            local_var_configuration.base_path
945        );
946        let mut local_var_req_builder =
947            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
948
949        if let Some(ref param_value) = id {
950            local_var_req_builder =
951                local_var_req_builder.query(&[("id", &param_value.to_string())]);
952        }
953        if let Some(ref param_value) = name {
954            local_var_req_builder =
955                local_var_req_builder.query(&[("name", &param_value.to_string())]);
956        }
957        local_var_req_builder = local_var_req_builder.query(&[("email", &email.to_string())]);
958        if let Some(ref param_value) = email_verified {
959            local_var_req_builder =
960                local_var_req_builder.query(&[("emailVerified", &param_value.to_string())]);
961        }
962        if let Some(ref param_value) = master_password {
963            local_var_req_builder =
964                local_var_req_builder.query(&[("masterPassword", &param_value.to_string())]);
965        }
966        if let Some(ref param_value) = master_password_hint {
967            local_var_req_builder =
968                local_var_req_builder.query(&[("masterPasswordHint", &param_value.to_string())]);
969        }
970        if let Some(ref param_value) = culture {
971            local_var_req_builder =
972                local_var_req_builder.query(&[("culture", &param_value.to_string())]);
973        }
974        local_var_req_builder =
975            local_var_req_builder.query(&[("securityStamp", &security_stamp.to_string())]);
976        if let Some(ref param_value) = two_factor_providers {
977            local_var_req_builder =
978                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
979        }
980        if let Some(ref param_value) = two_factor_recovery_code {
981            local_var_req_builder =
982                local_var_req_builder.query(&[("twoFactorRecoveryCode", &param_value.to_string())]);
983        }
984        if let Some(ref param_value) = equivalent_domains {
985            local_var_req_builder =
986                local_var_req_builder.query(&[("equivalentDomains", &param_value.to_string())]);
987        }
988        if let Some(ref param_value) = excluded_global_equivalent_domains {
989            local_var_req_builder = local_var_req_builder
990                .query(&[("excludedGlobalEquivalentDomains", &param_value.to_string())]);
991        }
992        if let Some(ref param_value) = account_revision_date {
993            local_var_req_builder =
994                local_var_req_builder.query(&[("accountRevisionDate", &param_value.to_string())]);
995        }
996        if let Some(ref param_value) = key {
997            local_var_req_builder =
998                local_var_req_builder.query(&[("key", &param_value.to_string())]);
999        }
1000        if let Some(ref param_value) = public_key {
1001            local_var_req_builder =
1002                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
1003        }
1004        if let Some(ref param_value) = private_key {
1005            local_var_req_builder =
1006                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
1007        }
1008        if let Some(ref param_value) = signed_public_key {
1009            local_var_req_builder =
1010                local_var_req_builder.query(&[("signedPublicKey", &param_value.to_string())]);
1011        }
1012        if let Some(ref param_value) = security_version {
1013            local_var_req_builder =
1014                local_var_req_builder.query(&[("securityVersion", &param_value.to_string())]);
1015        }
1016        if let Some(ref param_value) = security_state {
1017            local_var_req_builder =
1018                local_var_req_builder.query(&[("securityState", &param_value.to_string())]);
1019        }
1020        if let Some(ref param_value) = premium {
1021            local_var_req_builder =
1022                local_var_req_builder.query(&[("premium", &param_value.to_string())]);
1023        }
1024        if let Some(ref param_value) = premium_expiration_date {
1025            local_var_req_builder =
1026                local_var_req_builder.query(&[("premiumExpirationDate", &param_value.to_string())]);
1027        }
1028        if let Some(ref param_value) = renewal_reminder_date {
1029            local_var_req_builder =
1030                local_var_req_builder.query(&[("renewalReminderDate", &param_value.to_string())]);
1031        }
1032        if let Some(ref param_value) = storage {
1033            local_var_req_builder =
1034                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
1035        }
1036        if let Some(ref param_value) = max_storage_gb {
1037            local_var_req_builder =
1038                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
1039        }
1040        if let Some(ref param_value) = gateway {
1041            local_var_req_builder =
1042                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
1043        }
1044        if let Some(ref param_value) = gateway_customer_id {
1045            local_var_req_builder =
1046                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1047        }
1048        if let Some(ref param_value) = gateway_subscription_id {
1049            local_var_req_builder =
1050                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1051        }
1052        if let Some(ref param_value) = reference_data {
1053            local_var_req_builder =
1054                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
1055        }
1056        if let Some(ref param_value) = license_key {
1057            local_var_req_builder =
1058                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
1059        }
1060        local_var_req_builder = local_var_req_builder.query(&[("apiKey", &api_key.to_string())]);
1061        if let Some(ref param_value) = kdf {
1062            local_var_req_builder =
1063                local_var_req_builder.query(&[("kdf", &param_value.to_string())]);
1064        }
1065        if let Some(ref param_value) = kdf_iterations {
1066            local_var_req_builder =
1067                local_var_req_builder.query(&[("kdfIterations", &param_value.to_string())]);
1068        }
1069        if let Some(ref param_value) = kdf_memory {
1070            local_var_req_builder =
1071                local_var_req_builder.query(&[("kdfMemory", &param_value.to_string())]);
1072        }
1073        if let Some(ref param_value) = kdf_parallelism {
1074            local_var_req_builder =
1075                local_var_req_builder.query(&[("kdfParallelism", &param_value.to_string())]);
1076        }
1077        if let Some(ref param_value) = creation_date {
1078            local_var_req_builder =
1079                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
1080        }
1081        if let Some(ref param_value) = revision_date {
1082            local_var_req_builder =
1083                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
1084        }
1085        if let Some(ref param_value) = force_password_reset {
1086            local_var_req_builder =
1087                local_var_req_builder.query(&[("forcePasswordReset", &param_value.to_string())]);
1088        }
1089        if let Some(ref param_value) = uses_key_connector {
1090            local_var_req_builder =
1091                local_var_req_builder.query(&[("usesKeyConnector", &param_value.to_string())]);
1092        }
1093        if let Some(ref param_value) = failed_login_count {
1094            local_var_req_builder =
1095                local_var_req_builder.query(&[("failedLoginCount", &param_value.to_string())]);
1096        }
1097        if let Some(ref param_value) = last_failed_login_date {
1098            local_var_req_builder =
1099                local_var_req_builder.query(&[("lastFailedLoginDate", &param_value.to_string())]);
1100        }
1101        if let Some(ref param_value) = avatar_color {
1102            local_var_req_builder =
1103                local_var_req_builder.query(&[("avatarColor", &param_value.to_string())]);
1104        }
1105        if let Some(ref param_value) = last_password_change_date {
1106            local_var_req_builder = local_var_req_builder
1107                .query(&[("lastPasswordChangeDate", &param_value.to_string())]);
1108        }
1109        if let Some(ref param_value) = last_kdf_change_date {
1110            local_var_req_builder =
1111                local_var_req_builder.query(&[("lastKdfChangeDate", &param_value.to_string())]);
1112        }
1113        if let Some(ref param_value) = last_key_rotation_date {
1114            local_var_req_builder =
1115                local_var_req_builder.query(&[("lastKeyRotationDate", &param_value.to_string())]);
1116        }
1117        if let Some(ref param_value) = last_email_change_date {
1118            local_var_req_builder =
1119                local_var_req_builder.query(&[("lastEmailChangeDate", &param_value.to_string())]);
1120        }
1121        if let Some(ref param_value) = verify_devices {
1122            local_var_req_builder =
1123                local_var_req_builder.query(&[("verifyDevices", &param_value.to_string())]);
1124        }
1125        if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1126            local_var_req_builder = local_var_req_builder
1127                .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1128        }
1129        if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1130            local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1131        };
1132
1133        let local_var_req = local_var_req_builder.build()?;
1134        let local_var_resp = local_var_client.execute(local_var_req).await?;
1135
1136        let local_var_status = local_var_resp.status();
1137        let local_var_content = local_var_resp.text().await?;
1138
1139        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1140            Ok(())
1141        } else {
1142            let local_var_entity: Option<GetCreditError> =
1143                serde_json::from_str(&local_var_content).ok();
1144            let local_var_error = ResponseContent {
1145                status: local_var_status,
1146                content: local_var_content,
1147                entity: local_var_entity,
1148            };
1149            Err(Error::ResponseError(local_var_error))
1150        }
1151    }
1152
1153    async fn get_license<'a>(
1154        &self,
1155        email: &'a str,
1156        security_stamp: &'a str,
1157        api_key: &'a str,
1158        id: Option<uuid::Uuid>,
1159        name: Option<&'a str>,
1160        email_verified: Option<bool>,
1161        master_password: Option<&'a str>,
1162        master_password_hint: Option<&'a str>,
1163        culture: Option<&'a str>,
1164        two_factor_providers: Option<&'a str>,
1165        two_factor_recovery_code: Option<&'a str>,
1166        equivalent_domains: Option<&'a str>,
1167        excluded_global_equivalent_domains: Option<&'a str>,
1168        account_revision_date: Option<String>,
1169        key: Option<&'a str>,
1170        public_key: Option<&'a str>,
1171        private_key: Option<&'a str>,
1172        signed_public_key: Option<&'a str>,
1173        security_version: Option<i32>,
1174        security_state: Option<&'a str>,
1175        premium: Option<bool>,
1176        premium_expiration_date: Option<String>,
1177        renewal_reminder_date: Option<String>,
1178        storage: Option<i64>,
1179        max_storage_gb: Option<i32>,
1180        gateway: Option<models::GatewayType>,
1181        gateway_customer_id: Option<&'a str>,
1182        gateway_subscription_id: Option<&'a str>,
1183        reference_data: Option<&'a str>,
1184        license_key: Option<&'a str>,
1185        kdf: Option<models::KdfType>,
1186        kdf_iterations: Option<i32>,
1187        kdf_memory: Option<i32>,
1188        kdf_parallelism: Option<i32>,
1189        creation_date: Option<String>,
1190        revision_date: Option<String>,
1191        force_password_reset: Option<bool>,
1192        uses_key_connector: Option<bool>,
1193        failed_login_count: Option<i32>,
1194        last_failed_login_date: Option<String>,
1195        avatar_color: Option<&'a str>,
1196        last_password_change_date: Option<String>,
1197        last_kdf_change_date: Option<String>,
1198        last_key_rotation_date: Option<String>,
1199        last_email_change_date: Option<String>,
1200        verify_devices: Option<bool>,
1201    ) -> Result<(), Error<GetLicenseError>> {
1202        let local_var_configuration = &self.configuration;
1203
1204        let local_var_client = &local_var_configuration.client;
1205
1206        let local_var_uri_str = format!(
1207            "{}/account/billing/vnext/license",
1208            local_var_configuration.base_path
1209        );
1210        let mut local_var_req_builder =
1211            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
1212
1213        if let Some(ref param_value) = id {
1214            local_var_req_builder =
1215                local_var_req_builder.query(&[("id", &param_value.to_string())]);
1216        }
1217        if let Some(ref param_value) = name {
1218            local_var_req_builder =
1219                local_var_req_builder.query(&[("name", &param_value.to_string())]);
1220        }
1221        local_var_req_builder = local_var_req_builder.query(&[("email", &email.to_string())]);
1222        if let Some(ref param_value) = email_verified {
1223            local_var_req_builder =
1224                local_var_req_builder.query(&[("emailVerified", &param_value.to_string())]);
1225        }
1226        if let Some(ref param_value) = master_password {
1227            local_var_req_builder =
1228                local_var_req_builder.query(&[("masterPassword", &param_value.to_string())]);
1229        }
1230        if let Some(ref param_value) = master_password_hint {
1231            local_var_req_builder =
1232                local_var_req_builder.query(&[("masterPasswordHint", &param_value.to_string())]);
1233        }
1234        if let Some(ref param_value) = culture {
1235            local_var_req_builder =
1236                local_var_req_builder.query(&[("culture", &param_value.to_string())]);
1237        }
1238        local_var_req_builder =
1239            local_var_req_builder.query(&[("securityStamp", &security_stamp.to_string())]);
1240        if let Some(ref param_value) = two_factor_providers {
1241            local_var_req_builder =
1242                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
1243        }
1244        if let Some(ref param_value) = two_factor_recovery_code {
1245            local_var_req_builder =
1246                local_var_req_builder.query(&[("twoFactorRecoveryCode", &param_value.to_string())]);
1247        }
1248        if let Some(ref param_value) = equivalent_domains {
1249            local_var_req_builder =
1250                local_var_req_builder.query(&[("equivalentDomains", &param_value.to_string())]);
1251        }
1252        if let Some(ref param_value) = excluded_global_equivalent_domains {
1253            local_var_req_builder = local_var_req_builder
1254                .query(&[("excludedGlobalEquivalentDomains", &param_value.to_string())]);
1255        }
1256        if let Some(ref param_value) = account_revision_date {
1257            local_var_req_builder =
1258                local_var_req_builder.query(&[("accountRevisionDate", &param_value.to_string())]);
1259        }
1260        if let Some(ref param_value) = key {
1261            local_var_req_builder =
1262                local_var_req_builder.query(&[("key", &param_value.to_string())]);
1263        }
1264        if let Some(ref param_value) = public_key {
1265            local_var_req_builder =
1266                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
1267        }
1268        if let Some(ref param_value) = private_key {
1269            local_var_req_builder =
1270                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
1271        }
1272        if let Some(ref param_value) = signed_public_key {
1273            local_var_req_builder =
1274                local_var_req_builder.query(&[("signedPublicKey", &param_value.to_string())]);
1275        }
1276        if let Some(ref param_value) = security_version {
1277            local_var_req_builder =
1278                local_var_req_builder.query(&[("securityVersion", &param_value.to_string())]);
1279        }
1280        if let Some(ref param_value) = security_state {
1281            local_var_req_builder =
1282                local_var_req_builder.query(&[("securityState", &param_value.to_string())]);
1283        }
1284        if let Some(ref param_value) = premium {
1285            local_var_req_builder =
1286                local_var_req_builder.query(&[("premium", &param_value.to_string())]);
1287        }
1288        if let Some(ref param_value) = premium_expiration_date {
1289            local_var_req_builder =
1290                local_var_req_builder.query(&[("premiumExpirationDate", &param_value.to_string())]);
1291        }
1292        if let Some(ref param_value) = renewal_reminder_date {
1293            local_var_req_builder =
1294                local_var_req_builder.query(&[("renewalReminderDate", &param_value.to_string())]);
1295        }
1296        if let Some(ref param_value) = storage {
1297            local_var_req_builder =
1298                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
1299        }
1300        if let Some(ref param_value) = max_storage_gb {
1301            local_var_req_builder =
1302                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
1303        }
1304        if let Some(ref param_value) = gateway {
1305            local_var_req_builder =
1306                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
1307        }
1308        if let Some(ref param_value) = gateway_customer_id {
1309            local_var_req_builder =
1310                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1311        }
1312        if let Some(ref param_value) = gateway_subscription_id {
1313            local_var_req_builder =
1314                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1315        }
1316        if let Some(ref param_value) = reference_data {
1317            local_var_req_builder =
1318                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
1319        }
1320        if let Some(ref param_value) = license_key {
1321            local_var_req_builder =
1322                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
1323        }
1324        local_var_req_builder = local_var_req_builder.query(&[("apiKey", &api_key.to_string())]);
1325        if let Some(ref param_value) = kdf {
1326            local_var_req_builder =
1327                local_var_req_builder.query(&[("kdf", &param_value.to_string())]);
1328        }
1329        if let Some(ref param_value) = kdf_iterations {
1330            local_var_req_builder =
1331                local_var_req_builder.query(&[("kdfIterations", &param_value.to_string())]);
1332        }
1333        if let Some(ref param_value) = kdf_memory {
1334            local_var_req_builder =
1335                local_var_req_builder.query(&[("kdfMemory", &param_value.to_string())]);
1336        }
1337        if let Some(ref param_value) = kdf_parallelism {
1338            local_var_req_builder =
1339                local_var_req_builder.query(&[("kdfParallelism", &param_value.to_string())]);
1340        }
1341        if let Some(ref param_value) = creation_date {
1342            local_var_req_builder =
1343                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
1344        }
1345        if let Some(ref param_value) = revision_date {
1346            local_var_req_builder =
1347                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
1348        }
1349        if let Some(ref param_value) = force_password_reset {
1350            local_var_req_builder =
1351                local_var_req_builder.query(&[("forcePasswordReset", &param_value.to_string())]);
1352        }
1353        if let Some(ref param_value) = uses_key_connector {
1354            local_var_req_builder =
1355                local_var_req_builder.query(&[("usesKeyConnector", &param_value.to_string())]);
1356        }
1357        if let Some(ref param_value) = failed_login_count {
1358            local_var_req_builder =
1359                local_var_req_builder.query(&[("failedLoginCount", &param_value.to_string())]);
1360        }
1361        if let Some(ref param_value) = last_failed_login_date {
1362            local_var_req_builder =
1363                local_var_req_builder.query(&[("lastFailedLoginDate", &param_value.to_string())]);
1364        }
1365        if let Some(ref param_value) = avatar_color {
1366            local_var_req_builder =
1367                local_var_req_builder.query(&[("avatarColor", &param_value.to_string())]);
1368        }
1369        if let Some(ref param_value) = last_password_change_date {
1370            local_var_req_builder = local_var_req_builder
1371                .query(&[("lastPasswordChangeDate", &param_value.to_string())]);
1372        }
1373        if let Some(ref param_value) = last_kdf_change_date {
1374            local_var_req_builder =
1375                local_var_req_builder.query(&[("lastKdfChangeDate", &param_value.to_string())]);
1376        }
1377        if let Some(ref param_value) = last_key_rotation_date {
1378            local_var_req_builder =
1379                local_var_req_builder.query(&[("lastKeyRotationDate", &param_value.to_string())]);
1380        }
1381        if let Some(ref param_value) = last_email_change_date {
1382            local_var_req_builder =
1383                local_var_req_builder.query(&[("lastEmailChangeDate", &param_value.to_string())]);
1384        }
1385        if let Some(ref param_value) = verify_devices {
1386            local_var_req_builder =
1387                local_var_req_builder.query(&[("verifyDevices", &param_value.to_string())]);
1388        }
1389        if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1390            local_var_req_builder = local_var_req_builder
1391                .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1392        }
1393        if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1394            local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1395        };
1396
1397        let local_var_req = local_var_req_builder.build()?;
1398        let local_var_resp = local_var_client.execute(local_var_req).await?;
1399
1400        let local_var_status = local_var_resp.status();
1401        let local_var_content = local_var_resp.text().await?;
1402
1403        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1404            Ok(())
1405        } else {
1406            let local_var_entity: Option<GetLicenseError> =
1407                serde_json::from_str(&local_var_content).ok();
1408            let local_var_error = ResponseContent {
1409                status: local_var_status,
1410                content: local_var_content,
1411                entity: local_var_entity,
1412            };
1413            Err(Error::ResponseError(local_var_error))
1414        }
1415    }
1416
1417    async fn get_payment_method<'a>(
1418        &self,
1419        email: &'a str,
1420        security_stamp: &'a str,
1421        api_key: &'a str,
1422        id: Option<uuid::Uuid>,
1423        name: Option<&'a str>,
1424        email_verified: Option<bool>,
1425        master_password: Option<&'a str>,
1426        master_password_hint: Option<&'a str>,
1427        culture: Option<&'a str>,
1428        two_factor_providers: Option<&'a str>,
1429        two_factor_recovery_code: Option<&'a str>,
1430        equivalent_domains: Option<&'a str>,
1431        excluded_global_equivalent_domains: Option<&'a str>,
1432        account_revision_date: Option<String>,
1433        key: Option<&'a str>,
1434        public_key: Option<&'a str>,
1435        private_key: Option<&'a str>,
1436        signed_public_key: Option<&'a str>,
1437        security_version: Option<i32>,
1438        security_state: Option<&'a str>,
1439        premium: Option<bool>,
1440        premium_expiration_date: Option<String>,
1441        renewal_reminder_date: Option<String>,
1442        storage: Option<i64>,
1443        max_storage_gb: Option<i32>,
1444        gateway: Option<models::GatewayType>,
1445        gateway_customer_id: Option<&'a str>,
1446        gateway_subscription_id: Option<&'a str>,
1447        reference_data: Option<&'a str>,
1448        license_key: Option<&'a str>,
1449        kdf: Option<models::KdfType>,
1450        kdf_iterations: Option<i32>,
1451        kdf_memory: Option<i32>,
1452        kdf_parallelism: Option<i32>,
1453        creation_date: Option<String>,
1454        revision_date: Option<String>,
1455        force_password_reset: Option<bool>,
1456        uses_key_connector: Option<bool>,
1457        failed_login_count: Option<i32>,
1458        last_failed_login_date: Option<String>,
1459        avatar_color: Option<&'a str>,
1460        last_password_change_date: Option<String>,
1461        last_kdf_change_date: Option<String>,
1462        last_key_rotation_date: Option<String>,
1463        last_email_change_date: Option<String>,
1464        verify_devices: Option<bool>,
1465    ) -> Result<(), Error<GetPaymentMethodError>> {
1466        let local_var_configuration = &self.configuration;
1467
1468        let local_var_client = &local_var_configuration.client;
1469
1470        let local_var_uri_str = format!(
1471            "{}/account/billing/vnext/payment-method",
1472            local_var_configuration.base_path
1473        );
1474        let mut local_var_req_builder =
1475            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
1476
1477        if let Some(ref param_value) = id {
1478            local_var_req_builder =
1479                local_var_req_builder.query(&[("id", &param_value.to_string())]);
1480        }
1481        if let Some(ref param_value) = name {
1482            local_var_req_builder =
1483                local_var_req_builder.query(&[("name", &param_value.to_string())]);
1484        }
1485        local_var_req_builder = local_var_req_builder.query(&[("email", &email.to_string())]);
1486        if let Some(ref param_value) = email_verified {
1487            local_var_req_builder =
1488                local_var_req_builder.query(&[("emailVerified", &param_value.to_string())]);
1489        }
1490        if let Some(ref param_value) = master_password {
1491            local_var_req_builder =
1492                local_var_req_builder.query(&[("masterPassword", &param_value.to_string())]);
1493        }
1494        if let Some(ref param_value) = master_password_hint {
1495            local_var_req_builder =
1496                local_var_req_builder.query(&[("masterPasswordHint", &param_value.to_string())]);
1497        }
1498        if let Some(ref param_value) = culture {
1499            local_var_req_builder =
1500                local_var_req_builder.query(&[("culture", &param_value.to_string())]);
1501        }
1502        local_var_req_builder =
1503            local_var_req_builder.query(&[("securityStamp", &security_stamp.to_string())]);
1504        if let Some(ref param_value) = two_factor_providers {
1505            local_var_req_builder =
1506                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
1507        }
1508        if let Some(ref param_value) = two_factor_recovery_code {
1509            local_var_req_builder =
1510                local_var_req_builder.query(&[("twoFactorRecoveryCode", &param_value.to_string())]);
1511        }
1512        if let Some(ref param_value) = equivalent_domains {
1513            local_var_req_builder =
1514                local_var_req_builder.query(&[("equivalentDomains", &param_value.to_string())]);
1515        }
1516        if let Some(ref param_value) = excluded_global_equivalent_domains {
1517            local_var_req_builder = local_var_req_builder
1518                .query(&[("excludedGlobalEquivalentDomains", &param_value.to_string())]);
1519        }
1520        if let Some(ref param_value) = account_revision_date {
1521            local_var_req_builder =
1522                local_var_req_builder.query(&[("accountRevisionDate", &param_value.to_string())]);
1523        }
1524        if let Some(ref param_value) = key {
1525            local_var_req_builder =
1526                local_var_req_builder.query(&[("key", &param_value.to_string())]);
1527        }
1528        if let Some(ref param_value) = public_key {
1529            local_var_req_builder =
1530                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
1531        }
1532        if let Some(ref param_value) = private_key {
1533            local_var_req_builder =
1534                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
1535        }
1536        if let Some(ref param_value) = signed_public_key {
1537            local_var_req_builder =
1538                local_var_req_builder.query(&[("signedPublicKey", &param_value.to_string())]);
1539        }
1540        if let Some(ref param_value) = security_version {
1541            local_var_req_builder =
1542                local_var_req_builder.query(&[("securityVersion", &param_value.to_string())]);
1543        }
1544        if let Some(ref param_value) = security_state {
1545            local_var_req_builder =
1546                local_var_req_builder.query(&[("securityState", &param_value.to_string())]);
1547        }
1548        if let Some(ref param_value) = premium {
1549            local_var_req_builder =
1550                local_var_req_builder.query(&[("premium", &param_value.to_string())]);
1551        }
1552        if let Some(ref param_value) = premium_expiration_date {
1553            local_var_req_builder =
1554                local_var_req_builder.query(&[("premiumExpirationDate", &param_value.to_string())]);
1555        }
1556        if let Some(ref param_value) = renewal_reminder_date {
1557            local_var_req_builder =
1558                local_var_req_builder.query(&[("renewalReminderDate", &param_value.to_string())]);
1559        }
1560        if let Some(ref param_value) = storage {
1561            local_var_req_builder =
1562                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
1563        }
1564        if let Some(ref param_value) = max_storage_gb {
1565            local_var_req_builder =
1566                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
1567        }
1568        if let Some(ref param_value) = gateway {
1569            local_var_req_builder =
1570                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
1571        }
1572        if let Some(ref param_value) = gateway_customer_id {
1573            local_var_req_builder =
1574                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1575        }
1576        if let Some(ref param_value) = gateway_subscription_id {
1577            local_var_req_builder =
1578                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1579        }
1580        if let Some(ref param_value) = reference_data {
1581            local_var_req_builder =
1582                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
1583        }
1584        if let Some(ref param_value) = license_key {
1585            local_var_req_builder =
1586                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
1587        }
1588        local_var_req_builder = local_var_req_builder.query(&[("apiKey", &api_key.to_string())]);
1589        if let Some(ref param_value) = kdf {
1590            local_var_req_builder =
1591                local_var_req_builder.query(&[("kdf", &param_value.to_string())]);
1592        }
1593        if let Some(ref param_value) = kdf_iterations {
1594            local_var_req_builder =
1595                local_var_req_builder.query(&[("kdfIterations", &param_value.to_string())]);
1596        }
1597        if let Some(ref param_value) = kdf_memory {
1598            local_var_req_builder =
1599                local_var_req_builder.query(&[("kdfMemory", &param_value.to_string())]);
1600        }
1601        if let Some(ref param_value) = kdf_parallelism {
1602            local_var_req_builder =
1603                local_var_req_builder.query(&[("kdfParallelism", &param_value.to_string())]);
1604        }
1605        if let Some(ref param_value) = creation_date {
1606            local_var_req_builder =
1607                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
1608        }
1609        if let Some(ref param_value) = revision_date {
1610            local_var_req_builder =
1611                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
1612        }
1613        if let Some(ref param_value) = force_password_reset {
1614            local_var_req_builder =
1615                local_var_req_builder.query(&[("forcePasswordReset", &param_value.to_string())]);
1616        }
1617        if let Some(ref param_value) = uses_key_connector {
1618            local_var_req_builder =
1619                local_var_req_builder.query(&[("usesKeyConnector", &param_value.to_string())]);
1620        }
1621        if let Some(ref param_value) = failed_login_count {
1622            local_var_req_builder =
1623                local_var_req_builder.query(&[("failedLoginCount", &param_value.to_string())]);
1624        }
1625        if let Some(ref param_value) = last_failed_login_date {
1626            local_var_req_builder =
1627                local_var_req_builder.query(&[("lastFailedLoginDate", &param_value.to_string())]);
1628        }
1629        if let Some(ref param_value) = avatar_color {
1630            local_var_req_builder =
1631                local_var_req_builder.query(&[("avatarColor", &param_value.to_string())]);
1632        }
1633        if let Some(ref param_value) = last_password_change_date {
1634            local_var_req_builder = local_var_req_builder
1635                .query(&[("lastPasswordChangeDate", &param_value.to_string())]);
1636        }
1637        if let Some(ref param_value) = last_kdf_change_date {
1638            local_var_req_builder =
1639                local_var_req_builder.query(&[("lastKdfChangeDate", &param_value.to_string())]);
1640        }
1641        if let Some(ref param_value) = last_key_rotation_date {
1642            local_var_req_builder =
1643                local_var_req_builder.query(&[("lastKeyRotationDate", &param_value.to_string())]);
1644        }
1645        if let Some(ref param_value) = last_email_change_date {
1646            local_var_req_builder =
1647                local_var_req_builder.query(&[("lastEmailChangeDate", &param_value.to_string())]);
1648        }
1649        if let Some(ref param_value) = verify_devices {
1650            local_var_req_builder =
1651                local_var_req_builder.query(&[("verifyDevices", &param_value.to_string())]);
1652        }
1653        if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1654            local_var_req_builder = local_var_req_builder
1655                .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1656        }
1657        if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1658            local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1659        };
1660
1661        let local_var_req = local_var_req_builder.build()?;
1662        let local_var_resp = local_var_client.execute(local_var_req).await?;
1663
1664        let local_var_status = local_var_resp.status();
1665        let local_var_content = local_var_resp.text().await?;
1666
1667        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1668            Ok(())
1669        } else {
1670            let local_var_entity: Option<GetPaymentMethodError> =
1671                serde_json::from_str(&local_var_content).ok();
1672            let local_var_error = ResponseContent {
1673                status: local_var_status,
1674                content: local_var_content,
1675                entity: local_var_entity,
1676            };
1677            Err(Error::ResponseError(local_var_error))
1678        }
1679    }
1680
1681    async fn update_payment_method<'a>(
1682        &self,
1683        email: &'a str,
1684        security_stamp: &'a str,
1685        api_key: &'a str,
1686        id: Option<uuid::Uuid>,
1687        name: Option<&'a str>,
1688        email_verified: Option<bool>,
1689        master_password: Option<&'a str>,
1690        master_password_hint: Option<&'a str>,
1691        culture: Option<&'a str>,
1692        two_factor_providers: Option<&'a str>,
1693        two_factor_recovery_code: Option<&'a str>,
1694        equivalent_domains: Option<&'a str>,
1695        excluded_global_equivalent_domains: Option<&'a str>,
1696        account_revision_date: Option<String>,
1697        key: Option<&'a str>,
1698        public_key: Option<&'a str>,
1699        private_key: Option<&'a str>,
1700        signed_public_key: Option<&'a str>,
1701        security_version: Option<i32>,
1702        security_state: Option<&'a str>,
1703        premium: Option<bool>,
1704        premium_expiration_date: Option<String>,
1705        renewal_reminder_date: Option<String>,
1706        storage: Option<i64>,
1707        max_storage_gb: Option<i32>,
1708        gateway: Option<models::GatewayType>,
1709        gateway_customer_id: Option<&'a str>,
1710        gateway_subscription_id: Option<&'a str>,
1711        reference_data: Option<&'a str>,
1712        license_key: Option<&'a str>,
1713        kdf: Option<models::KdfType>,
1714        kdf_iterations: Option<i32>,
1715        kdf_memory: Option<i32>,
1716        kdf_parallelism: Option<i32>,
1717        creation_date: Option<String>,
1718        revision_date: Option<String>,
1719        force_password_reset: Option<bool>,
1720        uses_key_connector: Option<bool>,
1721        failed_login_count: Option<i32>,
1722        last_failed_login_date: Option<String>,
1723        avatar_color: Option<&'a str>,
1724        last_password_change_date: Option<String>,
1725        last_kdf_change_date: Option<String>,
1726        last_key_rotation_date: Option<String>,
1727        last_email_change_date: Option<String>,
1728        verify_devices: Option<bool>,
1729        tokenized_payment_method_request: Option<models::TokenizedPaymentMethodRequest>,
1730    ) -> Result<(), Error<UpdatePaymentMethodError>> {
1731        let local_var_configuration = &self.configuration;
1732
1733        let local_var_client = &local_var_configuration.client;
1734
1735        let local_var_uri_str = format!(
1736            "{}/account/billing/vnext/payment-method",
1737            local_var_configuration.base_path
1738        );
1739        let mut local_var_req_builder =
1740            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
1741
1742        if let Some(ref param_value) = id {
1743            local_var_req_builder =
1744                local_var_req_builder.query(&[("id", &param_value.to_string())]);
1745        }
1746        if let Some(ref param_value) = name {
1747            local_var_req_builder =
1748                local_var_req_builder.query(&[("name", &param_value.to_string())]);
1749        }
1750        local_var_req_builder = local_var_req_builder.query(&[("email", &email.to_string())]);
1751        if let Some(ref param_value) = email_verified {
1752            local_var_req_builder =
1753                local_var_req_builder.query(&[("emailVerified", &param_value.to_string())]);
1754        }
1755        if let Some(ref param_value) = master_password {
1756            local_var_req_builder =
1757                local_var_req_builder.query(&[("masterPassword", &param_value.to_string())]);
1758        }
1759        if let Some(ref param_value) = master_password_hint {
1760            local_var_req_builder =
1761                local_var_req_builder.query(&[("masterPasswordHint", &param_value.to_string())]);
1762        }
1763        if let Some(ref param_value) = culture {
1764            local_var_req_builder =
1765                local_var_req_builder.query(&[("culture", &param_value.to_string())]);
1766        }
1767        local_var_req_builder =
1768            local_var_req_builder.query(&[("securityStamp", &security_stamp.to_string())]);
1769        if let Some(ref param_value) = two_factor_providers {
1770            local_var_req_builder =
1771                local_var_req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
1772        }
1773        if let Some(ref param_value) = two_factor_recovery_code {
1774            local_var_req_builder =
1775                local_var_req_builder.query(&[("twoFactorRecoveryCode", &param_value.to_string())]);
1776        }
1777        if let Some(ref param_value) = equivalent_domains {
1778            local_var_req_builder =
1779                local_var_req_builder.query(&[("equivalentDomains", &param_value.to_string())]);
1780        }
1781        if let Some(ref param_value) = excluded_global_equivalent_domains {
1782            local_var_req_builder = local_var_req_builder
1783                .query(&[("excludedGlobalEquivalentDomains", &param_value.to_string())]);
1784        }
1785        if let Some(ref param_value) = account_revision_date {
1786            local_var_req_builder =
1787                local_var_req_builder.query(&[("accountRevisionDate", &param_value.to_string())]);
1788        }
1789        if let Some(ref param_value) = key {
1790            local_var_req_builder =
1791                local_var_req_builder.query(&[("key", &param_value.to_string())]);
1792        }
1793        if let Some(ref param_value) = public_key {
1794            local_var_req_builder =
1795                local_var_req_builder.query(&[("publicKey", &param_value.to_string())]);
1796        }
1797        if let Some(ref param_value) = private_key {
1798            local_var_req_builder =
1799                local_var_req_builder.query(&[("privateKey", &param_value.to_string())]);
1800        }
1801        if let Some(ref param_value) = signed_public_key {
1802            local_var_req_builder =
1803                local_var_req_builder.query(&[("signedPublicKey", &param_value.to_string())]);
1804        }
1805        if let Some(ref param_value) = security_version {
1806            local_var_req_builder =
1807                local_var_req_builder.query(&[("securityVersion", &param_value.to_string())]);
1808        }
1809        if let Some(ref param_value) = security_state {
1810            local_var_req_builder =
1811                local_var_req_builder.query(&[("securityState", &param_value.to_string())]);
1812        }
1813        if let Some(ref param_value) = premium {
1814            local_var_req_builder =
1815                local_var_req_builder.query(&[("premium", &param_value.to_string())]);
1816        }
1817        if let Some(ref param_value) = premium_expiration_date {
1818            local_var_req_builder =
1819                local_var_req_builder.query(&[("premiumExpirationDate", &param_value.to_string())]);
1820        }
1821        if let Some(ref param_value) = renewal_reminder_date {
1822            local_var_req_builder =
1823                local_var_req_builder.query(&[("renewalReminderDate", &param_value.to_string())]);
1824        }
1825        if let Some(ref param_value) = storage {
1826            local_var_req_builder =
1827                local_var_req_builder.query(&[("storage", &param_value.to_string())]);
1828        }
1829        if let Some(ref param_value) = max_storage_gb {
1830            local_var_req_builder =
1831                local_var_req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
1832        }
1833        if let Some(ref param_value) = gateway {
1834            local_var_req_builder =
1835                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
1836        }
1837        if let Some(ref param_value) = gateway_customer_id {
1838            local_var_req_builder =
1839                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1840        }
1841        if let Some(ref param_value) = gateway_subscription_id {
1842            local_var_req_builder =
1843                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1844        }
1845        if let Some(ref param_value) = reference_data {
1846            local_var_req_builder =
1847                local_var_req_builder.query(&[("referenceData", &param_value.to_string())]);
1848        }
1849        if let Some(ref param_value) = license_key {
1850            local_var_req_builder =
1851                local_var_req_builder.query(&[("licenseKey", &param_value.to_string())]);
1852        }
1853        local_var_req_builder = local_var_req_builder.query(&[("apiKey", &api_key.to_string())]);
1854        if let Some(ref param_value) = kdf {
1855            local_var_req_builder =
1856                local_var_req_builder.query(&[("kdf", &param_value.to_string())]);
1857        }
1858        if let Some(ref param_value) = kdf_iterations {
1859            local_var_req_builder =
1860                local_var_req_builder.query(&[("kdfIterations", &param_value.to_string())]);
1861        }
1862        if let Some(ref param_value) = kdf_memory {
1863            local_var_req_builder =
1864                local_var_req_builder.query(&[("kdfMemory", &param_value.to_string())]);
1865        }
1866        if let Some(ref param_value) = kdf_parallelism {
1867            local_var_req_builder =
1868                local_var_req_builder.query(&[("kdfParallelism", &param_value.to_string())]);
1869        }
1870        if let Some(ref param_value) = creation_date {
1871            local_var_req_builder =
1872                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
1873        }
1874        if let Some(ref param_value) = revision_date {
1875            local_var_req_builder =
1876                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
1877        }
1878        if let Some(ref param_value) = force_password_reset {
1879            local_var_req_builder =
1880                local_var_req_builder.query(&[("forcePasswordReset", &param_value.to_string())]);
1881        }
1882        if let Some(ref param_value) = uses_key_connector {
1883            local_var_req_builder =
1884                local_var_req_builder.query(&[("usesKeyConnector", &param_value.to_string())]);
1885        }
1886        if let Some(ref param_value) = failed_login_count {
1887            local_var_req_builder =
1888                local_var_req_builder.query(&[("failedLoginCount", &param_value.to_string())]);
1889        }
1890        if let Some(ref param_value) = last_failed_login_date {
1891            local_var_req_builder =
1892                local_var_req_builder.query(&[("lastFailedLoginDate", &param_value.to_string())]);
1893        }
1894        if let Some(ref param_value) = avatar_color {
1895            local_var_req_builder =
1896                local_var_req_builder.query(&[("avatarColor", &param_value.to_string())]);
1897        }
1898        if let Some(ref param_value) = last_password_change_date {
1899            local_var_req_builder = local_var_req_builder
1900                .query(&[("lastPasswordChangeDate", &param_value.to_string())]);
1901        }
1902        if let Some(ref param_value) = last_kdf_change_date {
1903            local_var_req_builder =
1904                local_var_req_builder.query(&[("lastKdfChangeDate", &param_value.to_string())]);
1905        }
1906        if let Some(ref param_value) = last_key_rotation_date {
1907            local_var_req_builder =
1908                local_var_req_builder.query(&[("lastKeyRotationDate", &param_value.to_string())]);
1909        }
1910        if let Some(ref param_value) = last_email_change_date {
1911            local_var_req_builder =
1912                local_var_req_builder.query(&[("lastEmailChangeDate", &param_value.to_string())]);
1913        }
1914        if let Some(ref param_value) = verify_devices {
1915            local_var_req_builder =
1916                local_var_req_builder.query(&[("verifyDevices", &param_value.to_string())]);
1917        }
1918        if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1919            local_var_req_builder = local_var_req_builder
1920                .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1921        }
1922        if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1923            local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1924        };
1925        local_var_req_builder = local_var_req_builder.json(&tokenized_payment_method_request);
1926
1927        let local_var_req = local_var_req_builder.build()?;
1928        let local_var_resp = local_var_client.execute(local_var_req).await?;
1929
1930        let local_var_status = local_var_resp.status();
1931        let local_var_content = local_var_resp.text().await?;
1932
1933        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1934            Ok(())
1935        } else {
1936            let local_var_entity: Option<UpdatePaymentMethodError> =
1937                serde_json::from_str(&local_var_content).ok();
1938            let local_var_error = ResponseContent {
1939                status: local_var_status,
1940                content: local_var_content,
1941                entity: local_var_entity,
1942            };
1943            Err(Error::ResponseError(local_var_error))
1944        }
1945    }
1946}
1947
1948/// struct for typed errors of method [`AccountBillingVNextApi::add_credit_via_bit_pay`]
1949#[derive(Debug, Clone, Serialize, Deserialize)]
1950#[serde(untagged)]
1951pub enum AddCreditViaBitPayError {
1952    UnknownValue(serde_json::Value),
1953}
1954/// struct for typed errors of method [`AccountBillingVNextApi::create_subscription`]
1955#[derive(Debug, Clone, Serialize, Deserialize)]
1956#[serde(untagged)]
1957pub enum CreateSubscriptionError {
1958    UnknownValue(serde_json::Value),
1959}
1960/// struct for typed errors of method [`AccountBillingVNextApi::get_credit`]
1961#[derive(Debug, Clone, Serialize, Deserialize)]
1962#[serde(untagged)]
1963pub enum GetCreditError {
1964    UnknownValue(serde_json::Value),
1965}
1966/// struct for typed errors of method [`AccountBillingVNextApi::get_license`]
1967#[derive(Debug, Clone, Serialize, Deserialize)]
1968#[serde(untagged)]
1969pub enum GetLicenseError {
1970    UnknownValue(serde_json::Value),
1971}
1972/// struct for typed errors of method [`AccountBillingVNextApi::get_payment_method`]
1973#[derive(Debug, Clone, Serialize, Deserialize)]
1974#[serde(untagged)]
1975pub enum GetPaymentMethodError {
1976    UnknownValue(serde_json::Value),
1977}
1978/// struct for typed errors of method [`AccountBillingVNextApi::update_payment_method`]
1979#[derive(Debug, Clone, Serialize, Deserialize)]
1980#[serde(untagged)]
1981pub enum UpdatePaymentMethodError {
1982    UnknownValue(serde_json::Value),
1983}