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