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::{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_premium<'a>(
136 &self,
137 payment_method_type: models::PaymentMethodType,
138 payment_token: Option<&'a str>,
139 additional_storage_gb: Option<i32>,
140 country: Option<&'a str>,
141 postal_code: Option<&'a str>,
142 license: Option<std::path::PathBuf>,
143 ) -> Result<models::PaymentResponseModel, Error<PostPremiumError>>;
144
145 async fn post_reinstate(&self) -> Result<(), Error<PostReinstateError>>;
147
148 async fn post_request_otp(&self) -> Result<(), Error<PostRequestOTPError>>;
150
151 async fn post_security_stamp<'a>(
153 &self,
154 secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
155 ) -> Result<(), Error<PostSecurityStampError>>;
156
157 async fn post_set_password<'a>(
159 &self,
160 set_password_request_model: Option<models::SetPasswordRequestModel>,
161 ) -> Result<(), Error<PostSetPasswordError>>;
162
163 async fn post_storage<'a>(
165 &self,
166 storage_request_model: Option<models::StorageRequestModel>,
167 ) -> Result<models::PaymentResponseModel, Error<PostStorageError>>;
168
169 async fn post_verify_email(&self) -> Result<(), Error<PostVerifyEmailError>>;
171
172 async fn post_verify_email_token<'a>(
174 &self,
175 verify_email_request_model: Option<models::VerifyEmailRequestModel>,
176 ) -> Result<(), Error<PostVerifyEmailTokenError>>;
177
178 async fn post_verify_password<'a>(
180 &self,
181 secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
182 ) -> Result<models::MasterPasswordPolicyResponseModel, Error<PostVerifyPasswordError>>;
183
184 async fn put_avatar<'a>(
186 &self,
187 update_avatar_request_model: Option<models::UpdateAvatarRequestModel>,
188 ) -> Result<models::ProfileResponseModel, Error<PutAvatarError>>;
189
190 async fn put_profile<'a>(
192 &self,
193 update_profile_request_model: Option<models::UpdateProfileRequestModel>,
194 ) -> Result<models::ProfileResponseModel, Error<PutProfileError>>;
195
196 async fn put_update_tde_password<'a>(
198 &self,
199 update_tde_offboarding_password_request_model: Option<
200 models::UpdateTdeOffboardingPasswordRequestModel,
201 >,
202 ) -> Result<(), Error<PutUpdateTdePasswordError>>;
203
204 async fn put_update_temp_password<'a>(
206 &self,
207 update_temp_password_request_model: Option<models::UpdateTempPasswordRequestModel>,
208 ) -> Result<(), Error<PutUpdateTempPasswordError>>;
209
210 async fn resend_new_device_otp<'a>(
212 &self,
213 unauthenticated_secret_verification_request_model: Option<
214 models::UnauthenticatedSecretVerificationRequestModel,
215 >,
216 ) -> Result<(), Error<ResendNewDeviceOtpError>>;
217
218 async fn rotate_api_key<'a>(
220 &self,
221 secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
222 ) -> Result<models::ApiKeyResponseModel, Error<RotateApiKeyError>>;
223
224 async fn set_user_verify_devices<'a>(
226 &self,
227 set_verify_devices_request_model: Option<models::SetVerifyDevicesRequestModel>,
228 ) -> Result<(), Error<SetUserVerifyDevicesError>>;
229
230 async fn verify_otp<'a>(
232 &self,
233 verify_otp_request_model: Option<models::VerifyOtpRequestModel>,
234 ) -> Result<(), Error<VerifyOTPError>>;
235}
236
237pub struct AccountsApiClient {
238 configuration: Arc<configuration::Configuration>,
239}
240
241impl AccountsApiClient {
242 pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
243 Self { configuration }
244 }
245}
246
247#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
248#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
249impl AccountsApi for AccountsApiClient {
250 async fn api_key<'a>(
251 &self,
252 secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
253 ) -> Result<models::ApiKeyResponseModel, Error<ApiKeyError>> {
254 let local_var_configuration = &self.configuration;
255
256 let local_var_client = &local_var_configuration.client;
257
258 let local_var_uri_str = format!("{}/accounts/api-key", local_var_configuration.base_path);
259 let mut local_var_req_builder =
260 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
261
262 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
263 local_var_req_builder = local_var_req_builder
264 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
265 }
266 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
267 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
268 };
269 local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
270
271 let local_var_req = local_var_req_builder.build()?;
272 let local_var_resp = local_var_client.execute(local_var_req).await?;
273
274 let local_var_status = local_var_resp.status();
275 let local_var_content_type = local_var_resp
276 .headers()
277 .get("content-type")
278 .and_then(|v| v.to_str().ok())
279 .unwrap_or("application/octet-stream");
280 let local_var_content_type = super::ContentType::from(local_var_content_type);
281 let local_var_content = local_var_resp.text().await?;
282
283 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
284 match local_var_content_type {
285 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
286 ContentType::Text => {
287 return Err(Error::from(serde_json::Error::custom(
288 "Received `text/plain` content type response that cannot be converted to `models::ApiKeyResponseModel`",
289 )));
290 }
291 ContentType::Unsupported(local_var_unknown_type) => {
292 return Err(Error::from(serde_json::Error::custom(format!(
293 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::ApiKeyResponseModel`"
294 ))));
295 }
296 }
297 } else {
298 let local_var_entity: Option<ApiKeyError> =
299 serde_json::from_str(&local_var_content).ok();
300 let local_var_error = ResponseContent {
301 status: local_var_status,
302 content: local_var_content,
303 entity: local_var_entity,
304 };
305 Err(Error::ResponseError(local_var_error))
306 }
307 }
308
309 async fn delete<'a>(
310 &self,
311 secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
312 ) -> Result<(), Error<DeleteError>> {
313 let local_var_configuration = &self.configuration;
314
315 let local_var_client = &local_var_configuration.client;
316
317 let local_var_uri_str = format!("{}/accounts", local_var_configuration.base_path);
318 let mut local_var_req_builder =
319 local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
320
321 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
322 local_var_req_builder = local_var_req_builder
323 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
324 }
325 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
326 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
327 };
328 local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
329
330 let local_var_req = local_var_req_builder.build()?;
331 let local_var_resp = local_var_client.execute(local_var_req).await?;
332
333 let local_var_status = local_var_resp.status();
334 let local_var_content = local_var_resp.text().await?;
335
336 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
337 Ok(())
338 } else {
339 let local_var_entity: Option<DeleteError> =
340 serde_json::from_str(&local_var_content).ok();
341 let local_var_error = ResponseContent {
342 status: local_var_status,
343 content: local_var_content,
344 entity: local_var_entity,
345 };
346 Err(Error::ResponseError(local_var_error))
347 }
348 }
349
350 async fn delete_sso_user<'a>(
351 &self,
352 organization_id: &'a str,
353 ) -> Result<(), Error<DeleteSsoUserError>> {
354 let local_var_configuration = &self.configuration;
355
356 let local_var_client = &local_var_configuration.client;
357
358 let local_var_uri_str = format!(
359 "{}/accounts/sso/{organizationId}",
360 local_var_configuration.base_path,
361 organizationId = crate::apis::urlencode(organization_id)
362 );
363 let mut local_var_req_builder =
364 local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
365
366 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
367 local_var_req_builder = local_var_req_builder
368 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
369 }
370 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
371 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
372 };
373
374 let local_var_req = local_var_req_builder.build()?;
375 let local_var_resp = local_var_client.execute(local_var_req).await?;
376
377 let local_var_status = local_var_resp.status();
378 let local_var_content = local_var_resp.text().await?;
379
380 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
381 Ok(())
382 } else {
383 let local_var_entity: Option<DeleteSsoUserError> =
384 serde_json::from_str(&local_var_content).ok();
385 let local_var_error = ResponseContent {
386 status: local_var_status,
387 content: local_var_content,
388 entity: local_var_entity,
389 };
390 Err(Error::ResponseError(local_var_error))
391 }
392 }
393
394 async fn get_account_revision_date(&self) -> Result<i64, Error<GetAccountRevisionDateError>> {
395 let local_var_configuration = &self.configuration;
396
397 let local_var_client = &local_var_configuration.client;
398
399 let local_var_uri_str = format!(
400 "{}/accounts/revision-date",
401 local_var_configuration.base_path
402 );
403 let mut local_var_req_builder =
404 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
405
406 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
407 local_var_req_builder = local_var_req_builder
408 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
409 }
410 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
411 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
412 };
413
414 let local_var_req = local_var_req_builder.build()?;
415 let local_var_resp = local_var_client.execute(local_var_req).await?;
416
417 let local_var_status = local_var_resp.status();
418 let local_var_content_type = local_var_resp
419 .headers()
420 .get("content-type")
421 .and_then(|v| v.to_str().ok())
422 .unwrap_or("application/octet-stream");
423 let local_var_content_type = super::ContentType::from(local_var_content_type);
424 let local_var_content = local_var_resp.text().await?;
425
426 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
427 match local_var_content_type {
428 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
429 ContentType::Text => {
430 return Err(Error::from(serde_json::Error::custom(
431 "Received `text/plain` content type response that cannot be converted to `i64`",
432 )));
433 }
434 ContentType::Unsupported(local_var_unknown_type) => {
435 return Err(Error::from(serde_json::Error::custom(format!(
436 "Received `{local_var_unknown_type}` content type response that cannot be converted to `i64`"
437 ))));
438 }
439 }
440 } else {
441 let local_var_entity: Option<GetAccountRevisionDateError> =
442 serde_json::from_str(&local_var_content).ok();
443 let local_var_error = ResponseContent {
444 status: local_var_status,
445 content: local_var_content,
446 entity: local_var_entity,
447 };
448 Err(Error::ResponseError(local_var_error))
449 }
450 }
451
452 async fn get_keys(&self) -> Result<models::KeysResponseModel, Error<GetKeysError>> {
453 let local_var_configuration = &self.configuration;
454
455 let local_var_client = &local_var_configuration.client;
456
457 let local_var_uri_str = format!("{}/accounts/keys", local_var_configuration.base_path);
458 let mut local_var_req_builder =
459 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
460
461 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
462 local_var_req_builder = local_var_req_builder
463 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
464 }
465 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
466 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
467 };
468
469 let local_var_req = local_var_req_builder.build()?;
470 let local_var_resp = local_var_client.execute(local_var_req).await?;
471
472 let local_var_status = local_var_resp.status();
473 let local_var_content_type = local_var_resp
474 .headers()
475 .get("content-type")
476 .and_then(|v| v.to_str().ok())
477 .unwrap_or("application/octet-stream");
478 let local_var_content_type = super::ContentType::from(local_var_content_type);
479 let local_var_content = local_var_resp.text().await?;
480
481 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
482 match local_var_content_type {
483 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
484 ContentType::Text => {
485 return Err(Error::from(serde_json::Error::custom(
486 "Received `text/plain` content type response that cannot be converted to `models::KeysResponseModel`",
487 )));
488 }
489 ContentType::Unsupported(local_var_unknown_type) => {
490 return Err(Error::from(serde_json::Error::custom(format!(
491 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::KeysResponseModel`"
492 ))));
493 }
494 }
495 } else {
496 let local_var_entity: Option<GetKeysError> =
497 serde_json::from_str(&local_var_content).ok();
498 let local_var_error = ResponseContent {
499 status: local_var_status,
500 content: local_var_content,
501 entity: local_var_entity,
502 };
503 Err(Error::ResponseError(local_var_error))
504 }
505 }
506
507 async fn get_organizations(
508 &self,
509 ) -> Result<
510 models::ProfileOrganizationResponseModelListResponseModel,
511 Error<GetOrganizationsError>,
512 > {
513 let local_var_configuration = &self.configuration;
514
515 let local_var_client = &local_var_configuration.client;
516
517 let local_var_uri_str = format!(
518 "{}/accounts/organizations",
519 local_var_configuration.base_path
520 );
521 let mut local_var_req_builder =
522 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
523
524 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
525 local_var_req_builder = local_var_req_builder
526 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
527 }
528 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
529 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
530 };
531
532 let local_var_req = local_var_req_builder.build()?;
533 let local_var_resp = local_var_client.execute(local_var_req).await?;
534
535 let local_var_status = local_var_resp.status();
536 let local_var_content_type = local_var_resp
537 .headers()
538 .get("content-type")
539 .and_then(|v| v.to_str().ok())
540 .unwrap_or("application/octet-stream");
541 let local_var_content_type = super::ContentType::from(local_var_content_type);
542 let local_var_content = local_var_resp.text().await?;
543
544 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
545 match local_var_content_type {
546 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
547 ContentType::Text => {
548 return Err(Error::from(serde_json::Error::custom(
549 "Received `text/plain` content type response that cannot be converted to `models::ProfileOrganizationResponseModelListResponseModel`",
550 )));
551 }
552 ContentType::Unsupported(local_var_unknown_type) => {
553 return Err(Error::from(serde_json::Error::custom(format!(
554 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::ProfileOrganizationResponseModelListResponseModel`"
555 ))));
556 }
557 }
558 } else {
559 let local_var_entity: Option<GetOrganizationsError> =
560 serde_json::from_str(&local_var_content).ok();
561 let local_var_error = ResponseContent {
562 status: local_var_status,
563 content: local_var_content,
564 entity: local_var_entity,
565 };
566 Err(Error::ResponseError(local_var_error))
567 }
568 }
569
570 async fn get_profile(&self) -> Result<models::ProfileResponseModel, Error<GetProfileError>> {
571 let local_var_configuration = &self.configuration;
572
573 let local_var_client = &local_var_configuration.client;
574
575 let local_var_uri_str = format!("{}/accounts/profile", local_var_configuration.base_path);
576 let mut local_var_req_builder =
577 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
578
579 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
580 local_var_req_builder = local_var_req_builder
581 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
582 }
583 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
584 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
585 };
586
587 let local_var_req = local_var_req_builder.build()?;
588 let local_var_resp = local_var_client.execute(local_var_req).await?;
589
590 let local_var_status = local_var_resp.status();
591 let local_var_content_type = local_var_resp
592 .headers()
593 .get("content-type")
594 .and_then(|v| v.to_str().ok())
595 .unwrap_or("application/octet-stream");
596 let local_var_content_type = super::ContentType::from(local_var_content_type);
597 let local_var_content = local_var_resp.text().await?;
598
599 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
600 match local_var_content_type {
601 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
602 ContentType::Text => {
603 return Err(Error::from(serde_json::Error::custom(
604 "Received `text/plain` content type response that cannot be converted to `models::ProfileResponseModel`",
605 )));
606 }
607 ContentType::Unsupported(local_var_unknown_type) => {
608 return Err(Error::from(serde_json::Error::custom(format!(
609 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::ProfileResponseModel`"
610 ))));
611 }
612 }
613 } else {
614 let local_var_entity: Option<GetProfileError> =
615 serde_json::from_str(&local_var_content).ok();
616 let local_var_error = ResponseContent {
617 status: local_var_status,
618 content: local_var_content,
619 entity: local_var_entity,
620 };
621 Err(Error::ResponseError(local_var_error))
622 }
623 }
624
625 async fn get_sso_user_identifier(&self) -> Result<String, Error<GetSsoUserIdentifierError>> {
626 let local_var_configuration = &self.configuration;
627
628 let local_var_client = &local_var_configuration.client;
629
630 let local_var_uri_str = format!(
631 "{}/accounts/sso/user-identifier",
632 local_var_configuration.base_path
633 );
634 let mut local_var_req_builder =
635 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
636
637 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
638 local_var_req_builder = local_var_req_builder
639 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
640 }
641 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
642 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
643 };
644
645 let local_var_req = local_var_req_builder.build()?;
646 let local_var_resp = local_var_client.execute(local_var_req).await?;
647
648 let local_var_status = local_var_resp.status();
649 let local_var_content_type = local_var_resp
650 .headers()
651 .get("content-type")
652 .and_then(|v| v.to_str().ok())
653 .unwrap_or("application/octet-stream");
654 let local_var_content_type = super::ContentType::from(local_var_content_type);
655 let local_var_content = local_var_resp.text().await?;
656
657 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
658 match local_var_content_type {
659 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
660 ContentType::Text => return Ok(local_var_content),
661 ContentType::Unsupported(local_var_unknown_type) => {
662 return Err(Error::from(serde_json::Error::custom(format!(
663 "Received `{local_var_unknown_type}` content type response that cannot be converted to `String`"
664 ))));
665 }
666 }
667 } else {
668 let local_var_entity: Option<GetSsoUserIdentifierError> =
669 serde_json::from_str(&local_var_content).ok();
670 let local_var_error = ResponseContent {
671 status: local_var_status,
672 content: local_var_content,
673 entity: local_var_entity,
674 };
675 Err(Error::ResponseError(local_var_error))
676 }
677 }
678
679 async fn get_subscription(
680 &self,
681 ) -> Result<models::SubscriptionResponseModel, Error<GetSubscriptionError>> {
682 let local_var_configuration = &self.configuration;
683
684 let local_var_client = &local_var_configuration.client;
685
686 let local_var_uri_str = format!(
687 "{}/accounts/subscription",
688 local_var_configuration.base_path
689 );
690 let mut local_var_req_builder =
691 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
692
693 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
694 local_var_req_builder = local_var_req_builder
695 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
696 }
697 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
698 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
699 };
700
701 let local_var_req = local_var_req_builder.build()?;
702 let local_var_resp = local_var_client.execute(local_var_req).await?;
703
704 let local_var_status = local_var_resp.status();
705 let local_var_content_type = local_var_resp
706 .headers()
707 .get("content-type")
708 .and_then(|v| v.to_str().ok())
709 .unwrap_or("application/octet-stream");
710 let local_var_content_type = super::ContentType::from(local_var_content_type);
711 let local_var_content = local_var_resp.text().await?;
712
713 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
714 match local_var_content_type {
715 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
716 ContentType::Text => {
717 return Err(Error::from(serde_json::Error::custom(
718 "Received `text/plain` content type response that cannot be converted to `models::SubscriptionResponseModel`",
719 )));
720 }
721 ContentType::Unsupported(local_var_unknown_type) => {
722 return Err(Error::from(serde_json::Error::custom(format!(
723 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::SubscriptionResponseModel`"
724 ))));
725 }
726 }
727 } else {
728 let local_var_entity: Option<GetSubscriptionError> =
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_cancel<'a>(
740 &self,
741 subscription_cancellation_request_model: Option<
742 models::SubscriptionCancellationRequestModel,
743 >,
744 ) -> Result<(), Error<PostCancelError>> {
745 let local_var_configuration = &self.configuration;
746
747 let local_var_client = &local_var_configuration.client;
748
749 let local_var_uri_str = format!("{}/accounts/cancel", local_var_configuration.base_path);
750 let mut local_var_req_builder =
751 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
752
753 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
754 local_var_req_builder = local_var_req_builder
755 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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 =
761 local_var_req_builder.json(&subscription_cancellation_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<PostCancelError> =
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<'a>(
784 &self,
785 delete_recover_request_model: Option<models::DeleteRecoverRequestModel>,
786 ) -> Result<(), Error<PostDeleteRecoverError>> {
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",
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_user_agent) = local_var_configuration.user_agent {
799 local_var_req_builder = local_var_req_builder
800 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
801 }
802 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
803 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
804 };
805 local_var_req_builder = local_var_req_builder.json(&delete_recover_request_model);
806
807 let local_var_req = local_var_req_builder.build()?;
808 let local_var_resp = local_var_client.execute(local_var_req).await?;
809
810 let local_var_status = local_var_resp.status();
811 let local_var_content = local_var_resp.text().await?;
812
813 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
814 Ok(())
815 } else {
816 let local_var_entity: Option<PostDeleteRecoverError> =
817 serde_json::from_str(&local_var_content).ok();
818 let local_var_error = ResponseContent {
819 status: local_var_status,
820 content: local_var_content,
821 entity: local_var_entity,
822 };
823 Err(Error::ResponseError(local_var_error))
824 }
825 }
826
827 async fn post_delete_recover_token<'a>(
828 &self,
829 verify_delete_recover_request_model: Option<models::VerifyDeleteRecoverRequestModel>,
830 ) -> Result<(), Error<PostDeleteRecoverTokenError>> {
831 let local_var_configuration = &self.configuration;
832
833 let local_var_client = &local_var_configuration.client;
834
835 let local_var_uri_str = format!(
836 "{}/accounts/delete-recover-token",
837 local_var_configuration.base_path
838 );
839 let mut local_var_req_builder =
840 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
841
842 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
843 local_var_req_builder = local_var_req_builder
844 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
845 }
846 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
847 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
848 };
849 local_var_req_builder = local_var_req_builder.json(&verify_delete_recover_request_model);
850
851 let local_var_req = local_var_req_builder.build()?;
852 let local_var_resp = local_var_client.execute(local_var_req).await?;
853
854 let local_var_status = local_var_resp.status();
855 let local_var_content = local_var_resp.text().await?;
856
857 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
858 Ok(())
859 } else {
860 let local_var_entity: Option<PostDeleteRecoverTokenError> =
861 serde_json::from_str(&local_var_content).ok();
862 let local_var_error = ResponseContent {
863 status: local_var_status,
864 content: local_var_content,
865 entity: local_var_entity,
866 };
867 Err(Error::ResponseError(local_var_error))
868 }
869 }
870
871 async fn post_email<'a>(
872 &self,
873 email_request_model: Option<models::EmailRequestModel>,
874 ) -> Result<(), Error<PostEmailError>> {
875 let local_var_configuration = &self.configuration;
876
877 let local_var_client = &local_var_configuration.client;
878
879 let local_var_uri_str = format!("{}/accounts/email", local_var_configuration.base_path);
880 let mut local_var_req_builder =
881 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
882
883 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
884 local_var_req_builder = local_var_req_builder
885 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
886 }
887 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
888 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
889 };
890 local_var_req_builder = local_var_req_builder.json(&email_request_model);
891
892 let local_var_req = local_var_req_builder.build()?;
893 let local_var_resp = local_var_client.execute(local_var_req).await?;
894
895 let local_var_status = local_var_resp.status();
896 let local_var_content = local_var_resp.text().await?;
897
898 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
899 Ok(())
900 } else {
901 let local_var_entity: Option<PostEmailError> =
902 serde_json::from_str(&local_var_content).ok();
903 let local_var_error = ResponseContent {
904 status: local_var_status,
905 content: local_var_content,
906 entity: local_var_entity,
907 };
908 Err(Error::ResponseError(local_var_error))
909 }
910 }
911
912 async fn post_email_token<'a>(
913 &self,
914 email_token_request_model: Option<models::EmailTokenRequestModel>,
915 ) -> Result<(), Error<PostEmailTokenError>> {
916 let local_var_configuration = &self.configuration;
917
918 let local_var_client = &local_var_configuration.client;
919
920 let local_var_uri_str =
921 format!("{}/accounts/email-token", local_var_configuration.base_path);
922 let mut local_var_req_builder =
923 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
924
925 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
926 local_var_req_builder = local_var_req_builder
927 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
928 }
929 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
930 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
931 };
932 local_var_req_builder = local_var_req_builder.json(&email_token_request_model);
933
934 let local_var_req = local_var_req_builder.build()?;
935 let local_var_resp = local_var_client.execute(local_var_req).await?;
936
937 let local_var_status = local_var_resp.status();
938 let local_var_content = local_var_resp.text().await?;
939
940 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
941 Ok(())
942 } else {
943 let local_var_entity: Option<PostEmailTokenError> =
944 serde_json::from_str(&local_var_content).ok();
945 let local_var_error = ResponseContent {
946 status: local_var_status,
947 content: local_var_content,
948 entity: local_var_entity,
949 };
950 Err(Error::ResponseError(local_var_error))
951 }
952 }
953
954 async fn post_kdf<'a>(
955 &self,
956 password_request_model: Option<models::PasswordRequestModel>,
957 ) -> Result<(), Error<PostKdfError>> {
958 let local_var_configuration = &self.configuration;
959
960 let local_var_client = &local_var_configuration.client;
961
962 let local_var_uri_str = format!("{}/accounts/kdf", local_var_configuration.base_path);
963 let mut local_var_req_builder =
964 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
965
966 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
967 local_var_req_builder = local_var_req_builder
968 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
969 }
970 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
971 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
972 };
973 local_var_req_builder = local_var_req_builder.json(&password_request_model);
974
975 let local_var_req = local_var_req_builder.build()?;
976 let local_var_resp = local_var_client.execute(local_var_req).await?;
977
978 let local_var_status = local_var_resp.status();
979 let local_var_content = local_var_resp.text().await?;
980
981 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
982 Ok(())
983 } else {
984 let local_var_entity: Option<PostKdfError> =
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_keys<'a>(
996 &self,
997 keys_request_model: Option<models::KeysRequestModel>,
998 ) -> Result<models::KeysResponseModel, Error<PostKeysError>> {
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/keys", 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_user_agent) = local_var_configuration.user_agent {
1008 local_var_req_builder = local_var_req_builder
1009 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1010 }
1011 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1012 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1013 };
1014 local_var_req_builder = local_var_req_builder.json(&keys_request_model);
1015
1016 let local_var_req = local_var_req_builder.build()?;
1017 let local_var_resp = local_var_client.execute(local_var_req).await?;
1018
1019 let local_var_status = local_var_resp.status();
1020 let local_var_content_type = local_var_resp
1021 .headers()
1022 .get("content-type")
1023 .and_then(|v| v.to_str().ok())
1024 .unwrap_or("application/octet-stream");
1025 let local_var_content_type = super::ContentType::from(local_var_content_type);
1026 let local_var_content = local_var_resp.text().await?;
1027
1028 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1029 match local_var_content_type {
1030 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
1031 ContentType::Text => {
1032 return Err(Error::from(serde_json::Error::custom(
1033 "Received `text/plain` content type response that cannot be converted to `models::KeysResponseModel`",
1034 )));
1035 }
1036 ContentType::Unsupported(local_var_unknown_type) => {
1037 return Err(Error::from(serde_json::Error::custom(format!(
1038 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::KeysResponseModel`"
1039 ))));
1040 }
1041 }
1042 } else {
1043 let local_var_entity: Option<PostKeysError> =
1044 serde_json::from_str(&local_var_content).ok();
1045 let local_var_error = ResponseContent {
1046 status: local_var_status,
1047 content: local_var_content,
1048 entity: local_var_entity,
1049 };
1050 Err(Error::ResponseError(local_var_error))
1051 }
1052 }
1053
1054 async fn post_license<'a>(
1055 &self,
1056 license: std::path::PathBuf,
1057 ) -> Result<(), Error<PostLicenseError>> {
1058 let local_var_configuration = &self.configuration;
1059
1060 let local_var_client = &local_var_configuration.client;
1061
1062 let local_var_uri_str = format!("{}/accounts/license", local_var_configuration.base_path);
1063 let mut local_var_req_builder =
1064 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1065
1066 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1067 local_var_req_builder = local_var_req_builder
1068 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1069 }
1070 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1071 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1072 };
1073 let mut local_var_form = reqwest::multipart::Form::new();
1074 local_var_req_builder = local_var_req_builder.multipart(local_var_form);
1076
1077 let local_var_req = local_var_req_builder.build()?;
1078 let local_var_resp = local_var_client.execute(local_var_req).await?;
1079
1080 let local_var_status = local_var_resp.status();
1081 let local_var_content = local_var_resp.text().await?;
1082
1083 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1084 Ok(())
1085 } else {
1086 let local_var_entity: Option<PostLicenseError> =
1087 serde_json::from_str(&local_var_content).ok();
1088 let local_var_error = ResponseContent {
1089 status: local_var_status,
1090 content: local_var_content,
1091 entity: local_var_entity,
1092 };
1093 Err(Error::ResponseError(local_var_error))
1094 }
1095 }
1096
1097 async fn post_password<'a>(
1098 &self,
1099 password_request_model: Option<models::PasswordRequestModel>,
1100 ) -> Result<(), Error<PostPasswordError>> {
1101 let local_var_configuration = &self.configuration;
1102
1103 let local_var_client = &local_var_configuration.client;
1104
1105 let local_var_uri_str = format!("{}/accounts/password", local_var_configuration.base_path);
1106 let mut local_var_req_builder =
1107 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1108
1109 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1110 local_var_req_builder = local_var_req_builder
1111 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1112 }
1113 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1114 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1115 };
1116 local_var_req_builder = local_var_req_builder.json(&password_request_model);
1117
1118 let local_var_req = local_var_req_builder.build()?;
1119 let local_var_resp = local_var_client.execute(local_var_req).await?;
1120
1121 let local_var_status = local_var_resp.status();
1122 let local_var_content = local_var_resp.text().await?;
1123
1124 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1125 Ok(())
1126 } else {
1127 let local_var_entity: Option<PostPasswordError> =
1128 serde_json::from_str(&local_var_content).ok();
1129 let local_var_error = ResponseContent {
1130 status: local_var_status,
1131 content: local_var_content,
1132 entity: local_var_entity,
1133 };
1134 Err(Error::ResponseError(local_var_error))
1135 }
1136 }
1137
1138 async fn post_password_hint<'a>(
1139 &self,
1140 password_hint_request_model: Option<models::PasswordHintRequestModel>,
1141 ) -> Result<(), Error<PostPasswordHintError>> {
1142 let local_var_configuration = &self.configuration;
1143
1144 let local_var_client = &local_var_configuration.client;
1145
1146 let local_var_uri_str = format!(
1147 "{}/accounts/password-hint",
1148 local_var_configuration.base_path
1149 );
1150 let mut local_var_req_builder =
1151 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1152
1153 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1154 local_var_req_builder = local_var_req_builder
1155 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1156 }
1157 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1158 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1159 };
1160 local_var_req_builder = local_var_req_builder.json(&password_hint_request_model);
1161
1162 let local_var_req = local_var_req_builder.build()?;
1163 let local_var_resp = local_var_client.execute(local_var_req).await?;
1164
1165 let local_var_status = local_var_resp.status();
1166 let local_var_content = local_var_resp.text().await?;
1167
1168 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1169 Ok(())
1170 } else {
1171 let local_var_entity: Option<PostPasswordHintError> =
1172 serde_json::from_str(&local_var_content).ok();
1173 let local_var_error = ResponseContent {
1174 status: local_var_status,
1175 content: local_var_content,
1176 entity: local_var_entity,
1177 };
1178 Err(Error::ResponseError(local_var_error))
1179 }
1180 }
1181
1182 async fn post_premium<'a>(
1183 &self,
1184 payment_method_type: models::PaymentMethodType,
1185 payment_token: Option<&'a str>,
1186 additional_storage_gb: Option<i32>,
1187 country: Option<&'a str>,
1188 postal_code: Option<&'a str>,
1189 license: Option<std::path::PathBuf>,
1190 ) -> Result<models::PaymentResponseModel, Error<PostPremiumError>> {
1191 let local_var_configuration = &self.configuration;
1192
1193 let local_var_client = &local_var_configuration.client;
1194
1195 let local_var_uri_str = format!("{}/accounts/premium", local_var_configuration.base_path);
1196 let mut local_var_req_builder =
1197 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1198
1199 local_var_req_builder =
1200 local_var_req_builder.query(&[("paymentMethodType", &payment_method_type.to_string())]);
1201 if let Some(ref param_value) = payment_token {
1202 local_var_req_builder =
1203 local_var_req_builder.query(&[("paymentToken", ¶m_value.to_string())]);
1204 }
1205 if let Some(ref param_value) = additional_storage_gb {
1206 local_var_req_builder =
1207 local_var_req_builder.query(&[("additionalStorageGb", ¶m_value.to_string())]);
1208 }
1209 if let Some(ref param_value) = country {
1210 local_var_req_builder =
1211 local_var_req_builder.query(&[("country", ¶m_value.to_string())]);
1212 }
1213 if let Some(ref param_value) = postal_code {
1214 local_var_req_builder =
1215 local_var_req_builder.query(&[("postalCode", ¶m_value.to_string())]);
1216 }
1217 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1218 local_var_req_builder = local_var_req_builder
1219 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1220 }
1221 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1222 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1223 };
1224 let mut local_var_form = reqwest::multipart::Form::new();
1225 local_var_req_builder = local_var_req_builder.multipart(local_var_form);
1227
1228 let local_var_req = local_var_req_builder.build()?;
1229 let local_var_resp = local_var_client.execute(local_var_req).await?;
1230
1231 let local_var_status = local_var_resp.status();
1232 let local_var_content_type = local_var_resp
1233 .headers()
1234 .get("content-type")
1235 .and_then(|v| v.to_str().ok())
1236 .unwrap_or("application/octet-stream");
1237 let local_var_content_type = super::ContentType::from(local_var_content_type);
1238 let local_var_content = local_var_resp.text().await?;
1239
1240 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1241 match local_var_content_type {
1242 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
1243 ContentType::Text => {
1244 return Err(Error::from(serde_json::Error::custom(
1245 "Received `text/plain` content type response that cannot be converted to `models::PaymentResponseModel`",
1246 )));
1247 }
1248 ContentType::Unsupported(local_var_unknown_type) => {
1249 return Err(Error::from(serde_json::Error::custom(format!(
1250 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::PaymentResponseModel`"
1251 ))));
1252 }
1253 }
1254 } else {
1255 let local_var_entity: Option<PostPremiumError> =
1256 serde_json::from_str(&local_var_content).ok();
1257 let local_var_error = ResponseContent {
1258 status: local_var_status,
1259 content: local_var_content,
1260 entity: local_var_entity,
1261 };
1262 Err(Error::ResponseError(local_var_error))
1263 }
1264 }
1265
1266 async fn post_reinstate(&self) -> Result<(), Error<PostReinstateError>> {
1267 let local_var_configuration = &self.configuration;
1268
1269 let local_var_client = &local_var_configuration.client;
1270
1271 let local_var_uri_str = format!(
1272 "{}/accounts/reinstate-premium",
1273 local_var_configuration.base_path
1274 );
1275 let mut local_var_req_builder =
1276 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1277
1278 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1279 local_var_req_builder = local_var_req_builder
1280 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1281 }
1282 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1283 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1284 };
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 = local_var_resp.text().await?;
1291
1292 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1293 Ok(())
1294 } else {
1295 let local_var_entity: Option<PostReinstateError> =
1296 serde_json::from_str(&local_var_content).ok();
1297 let local_var_error = ResponseContent {
1298 status: local_var_status,
1299 content: local_var_content,
1300 entity: local_var_entity,
1301 };
1302 Err(Error::ResponseError(local_var_error))
1303 }
1304 }
1305
1306 async fn post_request_otp(&self) -> Result<(), Error<PostRequestOTPError>> {
1307 let local_var_configuration = &self.configuration;
1308
1309 let local_var_client = &local_var_configuration.client;
1310
1311 let local_var_uri_str =
1312 format!("{}/accounts/request-otp", local_var_configuration.base_path);
1313 let mut local_var_req_builder =
1314 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1315
1316 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1317 local_var_req_builder = local_var_req_builder
1318 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1319 }
1320 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1321 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1322 };
1323
1324 let local_var_req = local_var_req_builder.build()?;
1325 let local_var_resp = local_var_client.execute(local_var_req).await?;
1326
1327 let local_var_status = local_var_resp.status();
1328 let local_var_content = local_var_resp.text().await?;
1329
1330 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1331 Ok(())
1332 } else {
1333 let local_var_entity: Option<PostRequestOTPError> =
1334 serde_json::from_str(&local_var_content).ok();
1335 let local_var_error = ResponseContent {
1336 status: local_var_status,
1337 content: local_var_content,
1338 entity: local_var_entity,
1339 };
1340 Err(Error::ResponseError(local_var_error))
1341 }
1342 }
1343
1344 async fn post_security_stamp<'a>(
1345 &self,
1346 secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
1347 ) -> Result<(), Error<PostSecurityStampError>> {
1348 let local_var_configuration = &self.configuration;
1349
1350 let local_var_client = &local_var_configuration.client;
1351
1352 let local_var_uri_str = format!(
1353 "{}/accounts/security-stamp",
1354 local_var_configuration.base_path
1355 );
1356 let mut local_var_req_builder =
1357 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1358
1359 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1360 local_var_req_builder = local_var_req_builder
1361 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1362 }
1363 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1364 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1365 };
1366 local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
1367
1368 let local_var_req = local_var_req_builder.build()?;
1369 let local_var_resp = local_var_client.execute(local_var_req).await?;
1370
1371 let local_var_status = local_var_resp.status();
1372 let local_var_content = local_var_resp.text().await?;
1373
1374 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1375 Ok(())
1376 } else {
1377 let local_var_entity: Option<PostSecurityStampError> =
1378 serde_json::from_str(&local_var_content).ok();
1379 let local_var_error = ResponseContent {
1380 status: local_var_status,
1381 content: local_var_content,
1382 entity: local_var_entity,
1383 };
1384 Err(Error::ResponseError(local_var_error))
1385 }
1386 }
1387
1388 async fn post_set_password<'a>(
1389 &self,
1390 set_password_request_model: Option<models::SetPasswordRequestModel>,
1391 ) -> Result<(), Error<PostSetPasswordError>> {
1392 let local_var_configuration = &self.configuration;
1393
1394 let local_var_client = &local_var_configuration.client;
1395
1396 let local_var_uri_str = format!(
1397 "{}/accounts/set-password",
1398 local_var_configuration.base_path
1399 );
1400 let mut local_var_req_builder =
1401 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1402
1403 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1404 local_var_req_builder = local_var_req_builder
1405 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1406 }
1407 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1408 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1409 };
1410 local_var_req_builder = local_var_req_builder.json(&set_password_request_model);
1411
1412 let local_var_req = local_var_req_builder.build()?;
1413 let local_var_resp = local_var_client.execute(local_var_req).await?;
1414
1415 let local_var_status = local_var_resp.status();
1416 let local_var_content = local_var_resp.text().await?;
1417
1418 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1419 Ok(())
1420 } else {
1421 let local_var_entity: Option<PostSetPasswordError> =
1422 serde_json::from_str(&local_var_content).ok();
1423 let local_var_error = ResponseContent {
1424 status: local_var_status,
1425 content: local_var_content,
1426 entity: local_var_entity,
1427 };
1428 Err(Error::ResponseError(local_var_error))
1429 }
1430 }
1431
1432 async fn post_storage<'a>(
1433 &self,
1434 storage_request_model: Option<models::StorageRequestModel>,
1435 ) -> Result<models::PaymentResponseModel, Error<PostStorageError>> {
1436 let local_var_configuration = &self.configuration;
1437
1438 let local_var_client = &local_var_configuration.client;
1439
1440 let local_var_uri_str = format!("{}/accounts/storage", local_var_configuration.base_path);
1441 let mut local_var_req_builder =
1442 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1443
1444 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1445 local_var_req_builder = local_var_req_builder
1446 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1447 }
1448 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1449 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1450 };
1451 local_var_req_builder = local_var_req_builder.json(&storage_request_model);
1452
1453 let local_var_req = local_var_req_builder.build()?;
1454 let local_var_resp = local_var_client.execute(local_var_req).await?;
1455
1456 let local_var_status = local_var_resp.status();
1457 let local_var_content_type = local_var_resp
1458 .headers()
1459 .get("content-type")
1460 .and_then(|v| v.to_str().ok())
1461 .unwrap_or("application/octet-stream");
1462 let local_var_content_type = super::ContentType::from(local_var_content_type);
1463 let local_var_content = local_var_resp.text().await?;
1464
1465 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1466 match local_var_content_type {
1467 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
1468 ContentType::Text => {
1469 return Err(Error::from(serde_json::Error::custom(
1470 "Received `text/plain` content type response that cannot be converted to `models::PaymentResponseModel`",
1471 )));
1472 }
1473 ContentType::Unsupported(local_var_unknown_type) => {
1474 return Err(Error::from(serde_json::Error::custom(format!(
1475 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::PaymentResponseModel`"
1476 ))));
1477 }
1478 }
1479 } else {
1480 let local_var_entity: Option<PostStorageError> =
1481 serde_json::from_str(&local_var_content).ok();
1482 let local_var_error = ResponseContent {
1483 status: local_var_status,
1484 content: local_var_content,
1485 entity: local_var_entity,
1486 };
1487 Err(Error::ResponseError(local_var_error))
1488 }
1489 }
1490
1491 async fn post_verify_email(&self) -> Result<(), Error<PostVerifyEmailError>> {
1492 let local_var_configuration = &self.configuration;
1493
1494 let local_var_client = &local_var_configuration.client;
1495
1496 let local_var_uri_str = format!(
1497 "{}/accounts/verify-email",
1498 local_var_configuration.base_path
1499 );
1500 let mut local_var_req_builder =
1501 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1502
1503 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1504 local_var_req_builder = local_var_req_builder
1505 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1506 }
1507 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1508 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1509 };
1510
1511 let local_var_req = local_var_req_builder.build()?;
1512 let local_var_resp = local_var_client.execute(local_var_req).await?;
1513
1514 let local_var_status = local_var_resp.status();
1515 let local_var_content = local_var_resp.text().await?;
1516
1517 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1518 Ok(())
1519 } else {
1520 let local_var_entity: Option<PostVerifyEmailError> =
1521 serde_json::from_str(&local_var_content).ok();
1522 let local_var_error = ResponseContent {
1523 status: local_var_status,
1524 content: local_var_content,
1525 entity: local_var_entity,
1526 };
1527 Err(Error::ResponseError(local_var_error))
1528 }
1529 }
1530
1531 async fn post_verify_email_token<'a>(
1532 &self,
1533 verify_email_request_model: Option<models::VerifyEmailRequestModel>,
1534 ) -> Result<(), Error<PostVerifyEmailTokenError>> {
1535 let local_var_configuration = &self.configuration;
1536
1537 let local_var_client = &local_var_configuration.client;
1538
1539 let local_var_uri_str = format!(
1540 "{}/accounts/verify-email-token",
1541 local_var_configuration.base_path
1542 );
1543 let mut local_var_req_builder =
1544 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1545
1546 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1547 local_var_req_builder = local_var_req_builder
1548 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1549 }
1550 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1551 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1552 };
1553 local_var_req_builder = local_var_req_builder.json(&verify_email_request_model);
1554
1555 let local_var_req = local_var_req_builder.build()?;
1556 let local_var_resp = local_var_client.execute(local_var_req).await?;
1557
1558 let local_var_status = local_var_resp.status();
1559 let local_var_content = local_var_resp.text().await?;
1560
1561 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1562 Ok(())
1563 } else {
1564 let local_var_entity: Option<PostVerifyEmailTokenError> =
1565 serde_json::from_str(&local_var_content).ok();
1566 let local_var_error = ResponseContent {
1567 status: local_var_status,
1568 content: local_var_content,
1569 entity: local_var_entity,
1570 };
1571 Err(Error::ResponseError(local_var_error))
1572 }
1573 }
1574
1575 async fn post_verify_password<'a>(
1576 &self,
1577 secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
1578 ) -> Result<models::MasterPasswordPolicyResponseModel, Error<PostVerifyPasswordError>> {
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/verify-password",
1585 local_var_configuration.base_path
1586 );
1587 let mut local_var_req_builder =
1588 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1589
1590 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1591 local_var_req_builder = local_var_req_builder
1592 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1593 }
1594 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1595 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1596 };
1597 local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
1598
1599 let local_var_req = local_var_req_builder.build()?;
1600 let local_var_resp = local_var_client.execute(local_var_req).await?;
1601
1602 let local_var_status = local_var_resp.status();
1603 let local_var_content_type = local_var_resp
1604 .headers()
1605 .get("content-type")
1606 .and_then(|v| v.to_str().ok())
1607 .unwrap_or("application/octet-stream");
1608 let local_var_content_type = super::ContentType::from(local_var_content_type);
1609 let local_var_content = local_var_resp.text().await?;
1610
1611 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1612 match local_var_content_type {
1613 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
1614 ContentType::Text => {
1615 return Err(Error::from(serde_json::Error::custom(
1616 "Received `text/plain` content type response that cannot be converted to `models::MasterPasswordPolicyResponseModel`",
1617 )));
1618 }
1619 ContentType::Unsupported(local_var_unknown_type) => {
1620 return Err(Error::from(serde_json::Error::custom(format!(
1621 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::MasterPasswordPolicyResponseModel`"
1622 ))));
1623 }
1624 }
1625 } else {
1626 let local_var_entity: Option<PostVerifyPasswordError> =
1627 serde_json::from_str(&local_var_content).ok();
1628 let local_var_error = ResponseContent {
1629 status: local_var_status,
1630 content: local_var_content,
1631 entity: local_var_entity,
1632 };
1633 Err(Error::ResponseError(local_var_error))
1634 }
1635 }
1636
1637 async fn put_avatar<'a>(
1638 &self,
1639 update_avatar_request_model: Option<models::UpdateAvatarRequestModel>,
1640 ) -> Result<models::ProfileResponseModel, Error<PutAvatarError>> {
1641 let local_var_configuration = &self.configuration;
1642
1643 let local_var_client = &local_var_configuration.client;
1644
1645 let local_var_uri_str = format!("{}/accounts/avatar", local_var_configuration.base_path);
1646 let mut local_var_req_builder =
1647 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
1648
1649 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1650 local_var_req_builder = local_var_req_builder
1651 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1652 }
1653 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1654 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1655 };
1656 local_var_req_builder = local_var_req_builder.json(&update_avatar_request_model);
1657
1658 let local_var_req = local_var_req_builder.build()?;
1659 let local_var_resp = local_var_client.execute(local_var_req).await?;
1660
1661 let local_var_status = local_var_resp.status();
1662 let local_var_content_type = local_var_resp
1663 .headers()
1664 .get("content-type")
1665 .and_then(|v| v.to_str().ok())
1666 .unwrap_or("application/octet-stream");
1667 let local_var_content_type = super::ContentType::from(local_var_content_type);
1668 let local_var_content = local_var_resp.text().await?;
1669
1670 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1671 match local_var_content_type {
1672 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
1673 ContentType::Text => {
1674 return Err(Error::from(serde_json::Error::custom(
1675 "Received `text/plain` content type response that cannot be converted to `models::ProfileResponseModel`",
1676 )));
1677 }
1678 ContentType::Unsupported(local_var_unknown_type) => {
1679 return Err(Error::from(serde_json::Error::custom(format!(
1680 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::ProfileResponseModel`"
1681 ))));
1682 }
1683 }
1684 } else {
1685 let local_var_entity: Option<PutAvatarError> =
1686 serde_json::from_str(&local_var_content).ok();
1687 let local_var_error = ResponseContent {
1688 status: local_var_status,
1689 content: local_var_content,
1690 entity: local_var_entity,
1691 };
1692 Err(Error::ResponseError(local_var_error))
1693 }
1694 }
1695
1696 async fn put_profile<'a>(
1697 &self,
1698 update_profile_request_model: Option<models::UpdateProfileRequestModel>,
1699 ) -> Result<models::ProfileResponseModel, Error<PutProfileError>> {
1700 let local_var_configuration = &self.configuration;
1701
1702 let local_var_client = &local_var_configuration.client;
1703
1704 let local_var_uri_str = format!("{}/accounts/profile", local_var_configuration.base_path);
1705 let mut local_var_req_builder =
1706 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
1707
1708 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1709 local_var_req_builder = local_var_req_builder
1710 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1711 }
1712 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1713 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1714 };
1715 local_var_req_builder = local_var_req_builder.json(&update_profile_request_model);
1716
1717 let local_var_req = local_var_req_builder.build()?;
1718 let local_var_resp = local_var_client.execute(local_var_req).await?;
1719
1720 let local_var_status = local_var_resp.status();
1721 let local_var_content_type = local_var_resp
1722 .headers()
1723 .get("content-type")
1724 .and_then(|v| v.to_str().ok())
1725 .unwrap_or("application/octet-stream");
1726 let local_var_content_type = super::ContentType::from(local_var_content_type);
1727 let local_var_content = local_var_resp.text().await?;
1728
1729 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1730 match local_var_content_type {
1731 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
1732 ContentType::Text => {
1733 return Err(Error::from(serde_json::Error::custom(
1734 "Received `text/plain` content type response that cannot be converted to `models::ProfileResponseModel`",
1735 )));
1736 }
1737 ContentType::Unsupported(local_var_unknown_type) => {
1738 return Err(Error::from(serde_json::Error::custom(format!(
1739 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::ProfileResponseModel`"
1740 ))));
1741 }
1742 }
1743 } else {
1744 let local_var_entity: Option<PutProfileError> =
1745 serde_json::from_str(&local_var_content).ok();
1746 let local_var_error = ResponseContent {
1747 status: local_var_status,
1748 content: local_var_content,
1749 entity: local_var_entity,
1750 };
1751 Err(Error::ResponseError(local_var_error))
1752 }
1753 }
1754
1755 async fn put_update_tde_password<'a>(
1756 &self,
1757 update_tde_offboarding_password_request_model: Option<
1758 models::UpdateTdeOffboardingPasswordRequestModel,
1759 >,
1760 ) -> Result<(), Error<PutUpdateTdePasswordError>> {
1761 let local_var_configuration = &self.configuration;
1762
1763 let local_var_client = &local_var_configuration.client;
1764
1765 let local_var_uri_str = format!(
1766 "{}/accounts/update-tde-offboarding-password",
1767 local_var_configuration.base_path
1768 );
1769 let mut local_var_req_builder =
1770 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
1771
1772 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1773 local_var_req_builder = local_var_req_builder
1774 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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 =
1780 local_var_req_builder.json(&update_tde_offboarding_password_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<PutUpdateTdePasswordError> =
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 put_update_temp_password<'a>(
1803 &self,
1804 update_temp_password_request_model: Option<models::UpdateTempPasswordRequestModel>,
1805 ) -> Result<(), Error<PutUpdateTempPasswordError>> {
1806 let local_var_configuration = &self.configuration;
1807
1808 let local_var_client = &local_var_configuration.client;
1809
1810 let local_var_uri_str = format!(
1811 "{}/accounts/update-temp-password",
1812 local_var_configuration.base_path
1813 );
1814 let mut local_var_req_builder =
1815 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
1816
1817 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1818 local_var_req_builder = local_var_req_builder
1819 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1820 }
1821 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1822 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1823 };
1824 local_var_req_builder = local_var_req_builder.json(&update_temp_password_request_model);
1825
1826 let local_var_req = local_var_req_builder.build()?;
1827 let local_var_resp = local_var_client.execute(local_var_req).await?;
1828
1829 let local_var_status = local_var_resp.status();
1830 let local_var_content = local_var_resp.text().await?;
1831
1832 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1833 Ok(())
1834 } else {
1835 let local_var_entity: Option<PutUpdateTempPasswordError> =
1836 serde_json::from_str(&local_var_content).ok();
1837 let local_var_error = ResponseContent {
1838 status: local_var_status,
1839 content: local_var_content,
1840 entity: local_var_entity,
1841 };
1842 Err(Error::ResponseError(local_var_error))
1843 }
1844 }
1845
1846 async fn resend_new_device_otp<'a>(
1847 &self,
1848 unauthenticated_secret_verification_request_model: Option<
1849 models::UnauthenticatedSecretVerificationRequestModel,
1850 >,
1851 ) -> Result<(), Error<ResendNewDeviceOtpError>> {
1852 let local_var_configuration = &self.configuration;
1853
1854 let local_var_client = &local_var_configuration.client;
1855
1856 let local_var_uri_str = format!(
1857 "{}/accounts/resend-new-device-otp",
1858 local_var_configuration.base_path
1859 );
1860 let mut local_var_req_builder =
1861 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1862
1863 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1864 local_var_req_builder = local_var_req_builder
1865 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1866 }
1867 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1868 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1869 };
1870 local_var_req_builder =
1871 local_var_req_builder.json(&unauthenticated_secret_verification_request_model);
1872
1873 let local_var_req = local_var_req_builder.build()?;
1874 let local_var_resp = local_var_client.execute(local_var_req).await?;
1875
1876 let local_var_status = local_var_resp.status();
1877 let local_var_content = local_var_resp.text().await?;
1878
1879 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1880 Ok(())
1881 } else {
1882 let local_var_entity: Option<ResendNewDeviceOtpError> =
1883 serde_json::from_str(&local_var_content).ok();
1884 let local_var_error = ResponseContent {
1885 status: local_var_status,
1886 content: local_var_content,
1887 entity: local_var_entity,
1888 };
1889 Err(Error::ResponseError(local_var_error))
1890 }
1891 }
1892
1893 async fn rotate_api_key<'a>(
1894 &self,
1895 secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
1896 ) -> Result<models::ApiKeyResponseModel, Error<RotateApiKeyError>> {
1897 let local_var_configuration = &self.configuration;
1898
1899 let local_var_client = &local_var_configuration.client;
1900
1901 let local_var_uri_str = format!(
1902 "{}/accounts/rotate-api-key",
1903 local_var_configuration.base_path
1904 );
1905 let mut local_var_req_builder =
1906 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1907
1908 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1909 local_var_req_builder = local_var_req_builder
1910 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1911 }
1912 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1913 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1914 };
1915 local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
1916
1917 let local_var_req = local_var_req_builder.build()?;
1918 let local_var_resp = local_var_client.execute(local_var_req).await?;
1919
1920 let local_var_status = local_var_resp.status();
1921 let local_var_content_type = local_var_resp
1922 .headers()
1923 .get("content-type")
1924 .and_then(|v| v.to_str().ok())
1925 .unwrap_or("application/octet-stream");
1926 let local_var_content_type = super::ContentType::from(local_var_content_type);
1927 let local_var_content = local_var_resp.text().await?;
1928
1929 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1930 match local_var_content_type {
1931 ContentType::Json => serde_json::from_str(&local_var_content).map_err(Error::from),
1932 ContentType::Text => {
1933 return Err(Error::from(serde_json::Error::custom(
1934 "Received `text/plain` content type response that cannot be converted to `models::ApiKeyResponseModel`",
1935 )));
1936 }
1937 ContentType::Unsupported(local_var_unknown_type) => {
1938 return Err(Error::from(serde_json::Error::custom(format!(
1939 "Received `{local_var_unknown_type}` content type response that cannot be converted to `models::ApiKeyResponseModel`"
1940 ))));
1941 }
1942 }
1943 } else {
1944 let local_var_entity: Option<RotateApiKeyError> =
1945 serde_json::from_str(&local_var_content).ok();
1946 let local_var_error = ResponseContent {
1947 status: local_var_status,
1948 content: local_var_content,
1949 entity: local_var_entity,
1950 };
1951 Err(Error::ResponseError(local_var_error))
1952 }
1953 }
1954
1955 async fn set_user_verify_devices<'a>(
1956 &self,
1957 set_verify_devices_request_model: Option<models::SetVerifyDevicesRequestModel>,
1958 ) -> Result<(), Error<SetUserVerifyDevicesError>> {
1959 let local_var_configuration = &self.configuration;
1960
1961 let local_var_client = &local_var_configuration.client;
1962
1963 let local_var_uri_str = format!(
1964 "{}/accounts/verify-devices",
1965 local_var_configuration.base_path
1966 );
1967 let mut local_var_req_builder =
1968 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
1969
1970 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1971 local_var_req_builder = local_var_req_builder
1972 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1973 }
1974 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
1975 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
1976 };
1977 local_var_req_builder = local_var_req_builder.json(&set_verify_devices_request_model);
1978
1979 let local_var_req = local_var_req_builder.build()?;
1980 let local_var_resp = local_var_client.execute(local_var_req).await?;
1981
1982 let local_var_status = local_var_resp.status();
1983 let local_var_content = local_var_resp.text().await?;
1984
1985 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1986 Ok(())
1987 } else {
1988 let local_var_entity: Option<SetUserVerifyDevicesError> =
1989 serde_json::from_str(&local_var_content).ok();
1990 let local_var_error = ResponseContent {
1991 status: local_var_status,
1992 content: local_var_content,
1993 entity: local_var_entity,
1994 };
1995 Err(Error::ResponseError(local_var_error))
1996 }
1997 }
1998
1999 async fn verify_otp<'a>(
2000 &self,
2001 verify_otp_request_model: Option<models::VerifyOtpRequestModel>,
2002 ) -> Result<(), Error<VerifyOTPError>> {
2003 let local_var_configuration = &self.configuration;
2004
2005 let local_var_client = &local_var_configuration.client;
2006
2007 let local_var_uri_str =
2008 format!("{}/accounts/verify-otp", local_var_configuration.base_path);
2009 let mut local_var_req_builder =
2010 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
2011
2012 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
2013 local_var_req_builder = local_var_req_builder
2014 .header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
2015 }
2016 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
2017 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
2018 };
2019 local_var_req_builder = local_var_req_builder.json(&verify_otp_request_model);
2020
2021 let local_var_req = local_var_req_builder.build()?;
2022 let local_var_resp = local_var_client.execute(local_var_req).await?;
2023
2024 let local_var_status = local_var_resp.status();
2025 let local_var_content = local_var_resp.text().await?;
2026
2027 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
2028 Ok(())
2029 } else {
2030 let local_var_entity: Option<VerifyOTPError> =
2031 serde_json::from_str(&local_var_content).ok();
2032 let local_var_error = ResponseContent {
2033 status: local_var_status,
2034 content: local_var_content,
2035 entity: local_var_entity,
2036 };
2037 Err(Error::ResponseError(local_var_error))
2038 }
2039 }
2040}
2041
2042#[derive(Debug, Clone, Serialize, Deserialize)]
2044#[serde(untagged)]
2045pub enum ApiKeyError {
2046 UnknownValue(serde_json::Value),
2047}
2048#[derive(Debug, Clone, Serialize, Deserialize)]
2050#[serde(untagged)]
2051pub enum DeleteError {
2052 UnknownValue(serde_json::Value),
2053}
2054#[derive(Debug, Clone, Serialize, Deserialize)]
2056#[serde(untagged)]
2057pub enum DeleteSsoUserError {
2058 UnknownValue(serde_json::Value),
2059}
2060#[derive(Debug, Clone, Serialize, Deserialize)]
2062#[serde(untagged)]
2063pub enum GetAccountRevisionDateError {
2064 UnknownValue(serde_json::Value),
2065}
2066#[derive(Debug, Clone, Serialize, Deserialize)]
2068#[serde(untagged)]
2069pub enum GetKeysError {
2070 UnknownValue(serde_json::Value),
2071}
2072#[derive(Debug, Clone, Serialize, Deserialize)]
2074#[serde(untagged)]
2075pub enum GetOrganizationsError {
2076 UnknownValue(serde_json::Value),
2077}
2078#[derive(Debug, Clone, Serialize, Deserialize)]
2080#[serde(untagged)]
2081pub enum GetProfileError {
2082 UnknownValue(serde_json::Value),
2083}
2084#[derive(Debug, Clone, Serialize, Deserialize)]
2086#[serde(untagged)]
2087pub enum GetSsoUserIdentifierError {
2088 UnknownValue(serde_json::Value),
2089}
2090#[derive(Debug, Clone, Serialize, Deserialize)]
2092#[serde(untagged)]
2093pub enum GetSubscriptionError {
2094 UnknownValue(serde_json::Value),
2095}
2096#[derive(Debug, Clone, Serialize, Deserialize)]
2098#[serde(untagged)]
2099pub enum PostCancelError {
2100 UnknownValue(serde_json::Value),
2101}
2102#[derive(Debug, Clone, Serialize, Deserialize)]
2104#[serde(untagged)]
2105pub enum PostDeleteRecoverError {
2106 UnknownValue(serde_json::Value),
2107}
2108#[derive(Debug, Clone, Serialize, Deserialize)]
2110#[serde(untagged)]
2111pub enum PostDeleteRecoverTokenError {
2112 UnknownValue(serde_json::Value),
2113}
2114#[derive(Debug, Clone, Serialize, Deserialize)]
2116#[serde(untagged)]
2117pub enum PostEmailError {
2118 UnknownValue(serde_json::Value),
2119}
2120#[derive(Debug, Clone, Serialize, Deserialize)]
2122#[serde(untagged)]
2123pub enum PostEmailTokenError {
2124 UnknownValue(serde_json::Value),
2125}
2126#[derive(Debug, Clone, Serialize, Deserialize)]
2128#[serde(untagged)]
2129pub enum PostKdfError {
2130 UnknownValue(serde_json::Value),
2131}
2132#[derive(Debug, Clone, Serialize, Deserialize)]
2134#[serde(untagged)]
2135pub enum PostKeysError {
2136 UnknownValue(serde_json::Value),
2137}
2138#[derive(Debug, Clone, Serialize, Deserialize)]
2140#[serde(untagged)]
2141pub enum PostLicenseError {
2142 UnknownValue(serde_json::Value),
2143}
2144#[derive(Debug, Clone, Serialize, Deserialize)]
2146#[serde(untagged)]
2147pub enum PostPasswordError {
2148 UnknownValue(serde_json::Value),
2149}
2150#[derive(Debug, Clone, Serialize, Deserialize)]
2152#[serde(untagged)]
2153pub enum PostPasswordHintError {
2154 UnknownValue(serde_json::Value),
2155}
2156#[derive(Debug, Clone, Serialize, Deserialize)]
2158#[serde(untagged)]
2159pub enum PostPremiumError {
2160 UnknownValue(serde_json::Value),
2161}
2162#[derive(Debug, Clone, Serialize, Deserialize)]
2164#[serde(untagged)]
2165pub enum PostReinstateError {
2166 UnknownValue(serde_json::Value),
2167}
2168#[derive(Debug, Clone, Serialize, Deserialize)]
2170#[serde(untagged)]
2171pub enum PostRequestOTPError {
2172 UnknownValue(serde_json::Value),
2173}
2174#[derive(Debug, Clone, Serialize, Deserialize)]
2176#[serde(untagged)]
2177pub enum PostSecurityStampError {
2178 UnknownValue(serde_json::Value),
2179}
2180#[derive(Debug, Clone, Serialize, Deserialize)]
2182#[serde(untagged)]
2183pub enum PostSetPasswordError {
2184 UnknownValue(serde_json::Value),
2185}
2186#[derive(Debug, Clone, Serialize, Deserialize)]
2188#[serde(untagged)]
2189pub enum PostStorageError {
2190 UnknownValue(serde_json::Value),
2191}
2192#[derive(Debug, Clone, Serialize, Deserialize)]
2194#[serde(untagged)]
2195pub enum PostVerifyEmailError {
2196 UnknownValue(serde_json::Value),
2197}
2198#[derive(Debug, Clone, Serialize, Deserialize)]
2200#[serde(untagged)]
2201pub enum PostVerifyEmailTokenError {
2202 UnknownValue(serde_json::Value),
2203}
2204#[derive(Debug, Clone, Serialize, Deserialize)]
2206#[serde(untagged)]
2207pub enum PostVerifyPasswordError {
2208 UnknownValue(serde_json::Value),
2209}
2210#[derive(Debug, Clone, Serialize, Deserialize)]
2212#[serde(untagged)]
2213pub enum PutAvatarError {
2214 UnknownValue(serde_json::Value),
2215}
2216#[derive(Debug, Clone, Serialize, Deserialize)]
2218#[serde(untagged)]
2219pub enum PutProfileError {
2220 UnknownValue(serde_json::Value),
2221}
2222#[derive(Debug, Clone, Serialize, Deserialize)]
2224#[serde(untagged)]
2225pub enum PutUpdateTdePasswordError {
2226 UnknownValue(serde_json::Value),
2227}
2228#[derive(Debug, Clone, Serialize, Deserialize)]
2230#[serde(untagged)]
2231pub enum PutUpdateTempPasswordError {
2232 UnknownValue(serde_json::Value),
2233}
2234#[derive(Debug, Clone, Serialize, Deserialize)]
2236#[serde(untagged)]
2237pub enum ResendNewDeviceOtpError {
2238 UnknownValue(serde_json::Value),
2239}
2240#[derive(Debug, Clone, Serialize, Deserialize)]
2242#[serde(untagged)]
2243pub enum RotateApiKeyError {
2244 UnknownValue(serde_json::Value),
2245}
2246#[derive(Debug, Clone, Serialize, Deserialize)]
2248#[serde(untagged)]
2249pub enum SetUserVerifyDevicesError {
2250 UnknownValue(serde_json::Value),
2251}
2252#[derive(Debug, Clone, Serialize, Deserialize)]
2254#[serde(untagged)]
2255pub enum VerifyOTPError {
2256 UnknownValue(serde_json::Value),
2257}