bitwarden_api_api/apis/
accounts_api.rs

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