Skip to main content

bitwarden_api_api/apis/
two_factor_api.rs

1/*
2 * Bitwarden Internal API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: latest
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use std::sync::Arc;
12
13use async_trait::async_trait;
14#[cfg(feature = "mockall")]
15use mockall::automock;
16use reqwest;
17use serde::{Deserialize, Serialize, de::Error as _};
18
19use super::{Error, configuration};
20use crate::{
21    apis::{AuthRequired, ContentType, ResponseContent},
22    models,
23};
24
25#[cfg_attr(feature = "mockall", automock)]
26#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
27#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
28pub trait TwoFactorApi: Send + Sync {
29    /// DELETE /two-factor/webauthn
30    async fn delete_web_authn<'a>(
31        &self,
32        two_factor_web_authn_delete_request_model: Option<
33            models::TwoFactorWebAuthnDeleteRequestModel,
34        >,
35    ) -> Result<models::TwoFactorWebAuthnResponseModel, Error<DeleteWebAuthnError>>;
36
37    /// DELETE /two-factor/authenticator
38    async fn disable_authenticator<'a>(
39        &self,
40        two_factor_authenticator_disable_request_model: Option<
41            models::TwoFactorAuthenticatorDisableRequestModel,
42        >,
43    ) -> Result<models::TwoFactorProviderResponseModel, Error<DisableAuthenticatorError>>;
44
45    /// GET /two-factor
46    async fn get(
47        &self,
48    ) -> Result<models::TwoFactorProviderResponseModelListResponseModel, Error<GetError>>;
49
50    /// POST /two-factor/get-authenticator
51    async fn get_authenticator<'a>(
52        &self,
53        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
54    ) -> Result<models::TwoFactorAuthenticatorResponseModel, Error<GetAuthenticatorError>>;
55
56    /// POST /two-factor/get-duo
57    async fn get_duo<'a>(
58        &self,
59        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
60    ) -> Result<models::TwoFactorDuoResponseModel, Error<GetDuoError>>;
61
62    /// POST /two-factor/get-email
63    async fn get_email<'a>(
64        &self,
65        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
66    ) -> Result<models::TwoFactorEmailResponseModel, Error<GetEmailError>>;
67
68    /// GET /organizations/{id}/two-factor
69    async fn get_organization<'a>(
70        &self,
71        id: &'a str,
72    ) -> Result<models::TwoFactorProviderResponseModelListResponseModel, Error<GetOrganizationError>>;
73
74    /// POST /organizations/{id}/two-factor/get-duo
75    async fn get_organization_duo<'a>(
76        &self,
77        id: &'a str,
78        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
79    ) -> Result<models::TwoFactorDuoResponseModel, Error<GetOrganizationDuoError>>;
80
81    /// POST /two-factor/get-recover
82    async fn get_recover<'a>(
83        &self,
84        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
85    ) -> Result<models::TwoFactorRecoverResponseModel, Error<GetRecoverError>>;
86
87    /// POST /two-factor/get-webauthn
88    async fn get_web_authn<'a>(
89        &self,
90        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
91    ) -> Result<models::TwoFactorWebAuthnResponseModel, Error<GetWebAuthnError>>;
92
93    /// POST /two-factor/get-yubikey
94    async fn get_yubi_key<'a>(
95        &self,
96        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
97    ) -> Result<models::TwoFactorYubiKeyResponseModel, Error<GetYubiKeyError>>;
98
99    /// PUT /two-factor/authenticator
100    async fn put_authenticator<'a>(
101        &self,
102        update_two_factor_authenticator_request_model: Option<
103            models::UpdateTwoFactorAuthenticatorRequestModel,
104        >,
105    ) -> Result<models::TwoFactorAuthenticatorResponseModel, Error<PutAuthenticatorError>>;
106
107    /// PUT /two-factor/disable
108    async fn put_disable<'a>(
109        &self,
110        two_factor_provider_request_model: Option<models::TwoFactorProviderRequestModel>,
111    ) -> Result<models::TwoFactorProviderResponseModel, Error<PutDisableError>>;
112
113    /// PUT /two-factor/duo
114    async fn put_duo<'a>(
115        &self,
116        update_two_factor_duo_request_model: Option<models::UpdateTwoFactorDuoRequestModel>,
117    ) -> Result<models::TwoFactorDuoResponseModel, Error<PutDuoError>>;
118
119    /// PUT /two-factor/email
120    async fn put_email<'a>(
121        &self,
122        update_two_factor_email_request_model: Option<models::UpdateTwoFactorEmailRequestModel>,
123    ) -> Result<models::TwoFactorEmailResponseModel, Error<PutEmailError>>;
124
125    /// PUT /organizations/{id}/two-factor/disable
126    async fn put_organization_disable<'a>(
127        &self,
128        id: &'a str,
129        two_factor_provider_request_model: Option<models::TwoFactorProviderRequestModel>,
130    ) -> Result<models::TwoFactorProviderResponseModel, Error<PutOrganizationDisableError>>;
131
132    /// PUT /organizations/{id}/two-factor/duo
133    async fn put_organization_duo<'a>(
134        &self,
135        id: &'a str,
136        update_two_factor_duo_request_model: Option<models::UpdateTwoFactorDuoRequestModel>,
137    ) -> Result<models::TwoFactorDuoResponseModel, Error<PutOrganizationDuoError>>;
138
139    /// PUT /two-factor/webauthn
140    async fn put_web_authn<'a>(
141        &self,
142        two_factor_web_authn_request_model: Option<models::TwoFactorWebAuthnRequestModel>,
143    ) -> Result<models::TwoFactorWebAuthnResponseModel, Error<PutWebAuthnError>>;
144
145    /// PUT /two-factor/yubikey
146    async fn put_yubi_key<'a>(
147        &self,
148        update_two_factor_yubico_otp_request_model: Option<
149            models::UpdateTwoFactorYubicoOtpRequestModel,
150        >,
151    ) -> Result<models::TwoFactorYubiKeyResponseModel, Error<PutYubiKeyError>>;
152
153    /// POST /two-factor/send-email
154    async fn send_email<'a>(
155        &self,
156        two_factor_email_request_model: Option<models::TwoFactorEmailRequestModel>,
157    ) -> Result<(), Error<SendEmailError>>;
158
159    /// POST /two-factor/send-email-login
160    async fn send_email_login<'a>(
161        &self,
162        two_factor_email_request_model: Option<models::TwoFactorEmailRequestModel>,
163    ) -> Result<(), Error<SendEmailLoginError>>;
164}
165
166pub struct TwoFactorApiClient {
167    configuration: Arc<configuration::Configuration>,
168}
169
170impl TwoFactorApiClient {
171    pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
172        Self { configuration }
173    }
174}
175
176#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
177#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
178impl TwoFactorApi for TwoFactorApiClient {
179    async fn delete_web_authn<'a>(
180        &self,
181        two_factor_web_authn_delete_request_model: Option<
182            models::TwoFactorWebAuthnDeleteRequestModel,
183        >,
184    ) -> Result<models::TwoFactorWebAuthnResponseModel, Error<DeleteWebAuthnError>> {
185        let local_var_configuration = &self.configuration;
186
187        let local_var_client = &local_var_configuration.client;
188
189        let local_var_uri_str =
190            format!("{}/two-factor/webauthn", local_var_configuration.base_path);
191        let mut local_var_req_builder =
192            local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
193
194        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
195        local_var_req_builder =
196            local_var_req_builder.json(&two_factor_web_authn_delete_request_model);
197
198        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
199    }
200
201    async fn disable_authenticator<'a>(
202        &self,
203        two_factor_authenticator_disable_request_model: Option<
204            models::TwoFactorAuthenticatorDisableRequestModel,
205        >,
206    ) -> Result<models::TwoFactorProviderResponseModel, Error<DisableAuthenticatorError>> {
207        let local_var_configuration = &self.configuration;
208
209        let local_var_client = &local_var_configuration.client;
210
211        let local_var_uri_str = format!(
212            "{}/two-factor/authenticator",
213            local_var_configuration.base_path
214        );
215        let mut local_var_req_builder =
216            local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
217
218        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
219        local_var_req_builder =
220            local_var_req_builder.json(&two_factor_authenticator_disable_request_model);
221
222        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
223    }
224
225    async fn get(
226        &self,
227    ) -> Result<models::TwoFactorProviderResponseModelListResponseModel, Error<GetError>> {
228        let local_var_configuration = &self.configuration;
229
230        let local_var_client = &local_var_configuration.client;
231
232        let local_var_uri_str = format!("{}/two-factor", local_var_configuration.base_path);
233        let mut local_var_req_builder =
234            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
235
236        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
237
238        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
239    }
240
241    async fn get_authenticator<'a>(
242        &self,
243        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
244    ) -> Result<models::TwoFactorAuthenticatorResponseModel, Error<GetAuthenticatorError>> {
245        let local_var_configuration = &self.configuration;
246
247        let local_var_client = &local_var_configuration.client;
248
249        let local_var_uri_str = format!(
250            "{}/two-factor/get-authenticator",
251            local_var_configuration.base_path
252        );
253        let mut local_var_req_builder =
254            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
255
256        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
257        local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
258
259        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
260    }
261
262    async fn get_duo<'a>(
263        &self,
264        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
265    ) -> Result<models::TwoFactorDuoResponseModel, Error<GetDuoError>> {
266        let local_var_configuration = &self.configuration;
267
268        let local_var_client = &local_var_configuration.client;
269
270        let local_var_uri_str = format!("{}/two-factor/get-duo", local_var_configuration.base_path);
271        let mut local_var_req_builder =
272            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
273
274        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
275        local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
276
277        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
278    }
279
280    async fn get_email<'a>(
281        &self,
282        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
283    ) -> Result<models::TwoFactorEmailResponseModel, Error<GetEmailError>> {
284        let local_var_configuration = &self.configuration;
285
286        let local_var_client = &local_var_configuration.client;
287
288        let local_var_uri_str =
289            format!("{}/two-factor/get-email", local_var_configuration.base_path);
290        let mut local_var_req_builder =
291            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
292
293        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
294        local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
295
296        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
297    }
298
299    async fn get_organization<'a>(
300        &self,
301        id: &'a str,
302    ) -> Result<models::TwoFactorProviderResponseModelListResponseModel, Error<GetOrganizationError>>
303    {
304        let local_var_configuration = &self.configuration;
305
306        let local_var_client = &local_var_configuration.client;
307
308        let local_var_uri_str = format!(
309            "{}/organizations/{id}/two-factor",
310            local_var_configuration.base_path,
311            id = crate::apis::urlencode(id)
312        );
313        let mut local_var_req_builder =
314            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
315
316        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
317
318        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
319    }
320
321    async fn get_organization_duo<'a>(
322        &self,
323        id: &'a str,
324        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
325    ) -> Result<models::TwoFactorDuoResponseModel, Error<GetOrganizationDuoError>> {
326        let local_var_configuration = &self.configuration;
327
328        let local_var_client = &local_var_configuration.client;
329
330        let local_var_uri_str = format!(
331            "{}/organizations/{id}/two-factor/get-duo",
332            local_var_configuration.base_path,
333            id = crate::apis::urlencode(id)
334        );
335        let mut local_var_req_builder =
336            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
337
338        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
339        local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
340
341        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
342    }
343
344    async fn get_recover<'a>(
345        &self,
346        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
347    ) -> Result<models::TwoFactorRecoverResponseModel, Error<GetRecoverError>> {
348        let local_var_configuration = &self.configuration;
349
350        let local_var_client = &local_var_configuration.client;
351
352        let local_var_uri_str = format!(
353            "{}/two-factor/get-recover",
354            local_var_configuration.base_path
355        );
356        let mut local_var_req_builder =
357            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
358
359        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
360        local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
361
362        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
363    }
364
365    async fn get_web_authn<'a>(
366        &self,
367        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
368    ) -> Result<models::TwoFactorWebAuthnResponseModel, Error<GetWebAuthnError>> {
369        let local_var_configuration = &self.configuration;
370
371        let local_var_client = &local_var_configuration.client;
372
373        let local_var_uri_str = format!(
374            "{}/two-factor/get-webauthn",
375            local_var_configuration.base_path
376        );
377        let mut local_var_req_builder =
378            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
379
380        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
381        local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
382
383        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
384    }
385
386    async fn get_yubi_key<'a>(
387        &self,
388        secret_verification_request_model: Option<models::SecretVerificationRequestModel>,
389    ) -> Result<models::TwoFactorYubiKeyResponseModel, Error<GetYubiKeyError>> {
390        let local_var_configuration = &self.configuration;
391
392        let local_var_client = &local_var_configuration.client;
393
394        let local_var_uri_str = format!(
395            "{}/two-factor/get-yubikey",
396            local_var_configuration.base_path
397        );
398        let mut local_var_req_builder =
399            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
400
401        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
402        local_var_req_builder = local_var_req_builder.json(&secret_verification_request_model);
403
404        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
405    }
406
407    async fn put_authenticator<'a>(
408        &self,
409        update_two_factor_authenticator_request_model: Option<
410            models::UpdateTwoFactorAuthenticatorRequestModel,
411        >,
412    ) -> Result<models::TwoFactorAuthenticatorResponseModel, Error<PutAuthenticatorError>> {
413        let local_var_configuration = &self.configuration;
414
415        let local_var_client = &local_var_configuration.client;
416
417        let local_var_uri_str = format!(
418            "{}/two-factor/authenticator",
419            local_var_configuration.base_path
420        );
421        let mut local_var_req_builder =
422            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
423
424        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
425        local_var_req_builder =
426            local_var_req_builder.json(&update_two_factor_authenticator_request_model);
427
428        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
429    }
430
431    async fn put_disable<'a>(
432        &self,
433        two_factor_provider_request_model: Option<models::TwoFactorProviderRequestModel>,
434    ) -> Result<models::TwoFactorProviderResponseModel, Error<PutDisableError>> {
435        let local_var_configuration = &self.configuration;
436
437        let local_var_client = &local_var_configuration.client;
438
439        let local_var_uri_str = format!("{}/two-factor/disable", local_var_configuration.base_path);
440        let mut local_var_req_builder =
441            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
442
443        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
444        local_var_req_builder = local_var_req_builder.json(&two_factor_provider_request_model);
445
446        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
447    }
448
449    async fn put_duo<'a>(
450        &self,
451        update_two_factor_duo_request_model: Option<models::UpdateTwoFactorDuoRequestModel>,
452    ) -> Result<models::TwoFactorDuoResponseModel, Error<PutDuoError>> {
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!("{}/two-factor/duo", local_var_configuration.base_path);
458        let mut local_var_req_builder =
459            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
460
461        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
462        local_var_req_builder = local_var_req_builder.json(&update_two_factor_duo_request_model);
463
464        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
465    }
466
467    async fn put_email<'a>(
468        &self,
469        update_two_factor_email_request_model: Option<models::UpdateTwoFactorEmailRequestModel>,
470    ) -> Result<models::TwoFactorEmailResponseModel, Error<PutEmailError>> {
471        let local_var_configuration = &self.configuration;
472
473        let local_var_client = &local_var_configuration.client;
474
475        let local_var_uri_str = format!("{}/two-factor/email", local_var_configuration.base_path);
476        let mut local_var_req_builder =
477            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
478
479        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
480        local_var_req_builder = local_var_req_builder.json(&update_two_factor_email_request_model);
481
482        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
483    }
484
485    async fn put_organization_disable<'a>(
486        &self,
487        id: &'a str,
488        two_factor_provider_request_model: Option<models::TwoFactorProviderRequestModel>,
489    ) -> Result<models::TwoFactorProviderResponseModel, Error<PutOrganizationDisableError>> {
490        let local_var_configuration = &self.configuration;
491
492        let local_var_client = &local_var_configuration.client;
493
494        let local_var_uri_str = format!(
495            "{}/organizations/{id}/two-factor/disable",
496            local_var_configuration.base_path,
497            id = crate::apis::urlencode(id)
498        );
499        let mut local_var_req_builder =
500            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
501
502        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
503        local_var_req_builder = local_var_req_builder.json(&two_factor_provider_request_model);
504
505        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
506    }
507
508    async fn put_organization_duo<'a>(
509        &self,
510        id: &'a str,
511        update_two_factor_duo_request_model: Option<models::UpdateTwoFactorDuoRequestModel>,
512    ) -> Result<models::TwoFactorDuoResponseModel, Error<PutOrganizationDuoError>> {
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            "{}/organizations/{id}/two-factor/duo",
519            local_var_configuration.base_path,
520            id = crate::apis::urlencode(id)
521        );
522        let mut local_var_req_builder =
523            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
524
525        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
526        local_var_req_builder = local_var_req_builder.json(&update_two_factor_duo_request_model);
527
528        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
529    }
530
531    async fn put_web_authn<'a>(
532        &self,
533        two_factor_web_authn_request_model: Option<models::TwoFactorWebAuthnRequestModel>,
534    ) -> Result<models::TwoFactorWebAuthnResponseModel, Error<PutWebAuthnError>> {
535        let local_var_configuration = &self.configuration;
536
537        let local_var_client = &local_var_configuration.client;
538
539        let local_var_uri_str =
540            format!("{}/two-factor/webauthn", local_var_configuration.base_path);
541        let mut local_var_req_builder =
542            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
543
544        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
545        local_var_req_builder = local_var_req_builder.json(&two_factor_web_authn_request_model);
546
547        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
548    }
549
550    async fn put_yubi_key<'a>(
551        &self,
552        update_two_factor_yubico_otp_request_model: Option<
553            models::UpdateTwoFactorYubicoOtpRequestModel,
554        >,
555    ) -> Result<models::TwoFactorYubiKeyResponseModel, Error<PutYubiKeyError>> {
556        let local_var_configuration = &self.configuration;
557
558        let local_var_client = &local_var_configuration.client;
559
560        let local_var_uri_str = format!("{}/two-factor/yubikey", local_var_configuration.base_path);
561        let mut local_var_req_builder =
562            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
563
564        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
565        local_var_req_builder =
566            local_var_req_builder.json(&update_two_factor_yubico_otp_request_model);
567
568        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
569    }
570
571    async fn send_email<'a>(
572        &self,
573        two_factor_email_request_model: Option<models::TwoFactorEmailRequestModel>,
574    ) -> Result<(), Error<SendEmailError>> {
575        let local_var_configuration = &self.configuration;
576
577        let local_var_client = &local_var_configuration.client;
578
579        let local_var_uri_str = format!(
580            "{}/two-factor/send-email",
581            local_var_configuration.base_path
582        );
583        let mut local_var_req_builder =
584            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
585
586        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
587        local_var_req_builder = local_var_req_builder.json(&two_factor_email_request_model);
588
589        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
590    }
591
592    async fn send_email_login<'a>(
593        &self,
594        two_factor_email_request_model: Option<models::TwoFactorEmailRequestModel>,
595    ) -> Result<(), Error<SendEmailLoginError>> {
596        let local_var_configuration = &self.configuration;
597
598        let local_var_client = &local_var_configuration.client;
599
600        let local_var_uri_str = format!(
601            "{}/two-factor/send-email-login",
602            local_var_configuration.base_path
603        );
604        let mut local_var_req_builder =
605            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
606
607        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
608        local_var_req_builder = local_var_req_builder.json(&two_factor_email_request_model);
609
610        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
611    }
612}
613
614/// struct for typed errors of method [`TwoFactorApi::delete_web_authn`]
615#[derive(Debug, Clone, Serialize, Deserialize)]
616#[serde(untagged)]
617pub enum DeleteWebAuthnError {
618    UnknownValue(serde_json::Value),
619}
620/// struct for typed errors of method [`TwoFactorApi::disable_authenticator`]
621#[derive(Debug, Clone, Serialize, Deserialize)]
622#[serde(untagged)]
623pub enum DisableAuthenticatorError {
624    UnknownValue(serde_json::Value),
625}
626/// struct for typed errors of method [`TwoFactorApi::get`]
627#[derive(Debug, Clone, Serialize, Deserialize)]
628#[serde(untagged)]
629pub enum GetError {
630    UnknownValue(serde_json::Value),
631}
632/// struct for typed errors of method [`TwoFactorApi::get_authenticator`]
633#[derive(Debug, Clone, Serialize, Deserialize)]
634#[serde(untagged)]
635pub enum GetAuthenticatorError {
636    UnknownValue(serde_json::Value),
637}
638/// struct for typed errors of method [`TwoFactorApi::get_duo`]
639#[derive(Debug, Clone, Serialize, Deserialize)]
640#[serde(untagged)]
641pub enum GetDuoError {
642    UnknownValue(serde_json::Value),
643}
644/// struct for typed errors of method [`TwoFactorApi::get_email`]
645#[derive(Debug, Clone, Serialize, Deserialize)]
646#[serde(untagged)]
647pub enum GetEmailError {
648    UnknownValue(serde_json::Value),
649}
650/// struct for typed errors of method [`TwoFactorApi::get_organization`]
651#[derive(Debug, Clone, Serialize, Deserialize)]
652#[serde(untagged)]
653pub enum GetOrganizationError {
654    UnknownValue(serde_json::Value),
655}
656/// struct for typed errors of method [`TwoFactorApi::get_organization_duo`]
657#[derive(Debug, Clone, Serialize, Deserialize)]
658#[serde(untagged)]
659pub enum GetOrganizationDuoError {
660    UnknownValue(serde_json::Value),
661}
662/// struct for typed errors of method [`TwoFactorApi::get_recover`]
663#[derive(Debug, Clone, Serialize, Deserialize)]
664#[serde(untagged)]
665pub enum GetRecoverError {
666    UnknownValue(serde_json::Value),
667}
668/// struct for typed errors of method [`TwoFactorApi::get_web_authn`]
669#[derive(Debug, Clone, Serialize, Deserialize)]
670#[serde(untagged)]
671pub enum GetWebAuthnError {
672    UnknownValue(serde_json::Value),
673}
674/// struct for typed errors of method [`TwoFactorApi::get_yubi_key`]
675#[derive(Debug, Clone, Serialize, Deserialize)]
676#[serde(untagged)]
677pub enum GetYubiKeyError {
678    UnknownValue(serde_json::Value),
679}
680/// struct for typed errors of method [`TwoFactorApi::put_authenticator`]
681#[derive(Debug, Clone, Serialize, Deserialize)]
682#[serde(untagged)]
683pub enum PutAuthenticatorError {
684    UnknownValue(serde_json::Value),
685}
686/// struct for typed errors of method [`TwoFactorApi::put_disable`]
687#[derive(Debug, Clone, Serialize, Deserialize)]
688#[serde(untagged)]
689pub enum PutDisableError {
690    UnknownValue(serde_json::Value),
691}
692/// struct for typed errors of method [`TwoFactorApi::put_duo`]
693#[derive(Debug, Clone, Serialize, Deserialize)]
694#[serde(untagged)]
695pub enum PutDuoError {
696    UnknownValue(serde_json::Value),
697}
698/// struct for typed errors of method [`TwoFactorApi::put_email`]
699#[derive(Debug, Clone, Serialize, Deserialize)]
700#[serde(untagged)]
701pub enum PutEmailError {
702    UnknownValue(serde_json::Value),
703}
704/// struct for typed errors of method [`TwoFactorApi::put_organization_disable`]
705#[derive(Debug, Clone, Serialize, Deserialize)]
706#[serde(untagged)]
707pub enum PutOrganizationDisableError {
708    UnknownValue(serde_json::Value),
709}
710/// struct for typed errors of method [`TwoFactorApi::put_organization_duo`]
711#[derive(Debug, Clone, Serialize, Deserialize)]
712#[serde(untagged)]
713pub enum PutOrganizationDuoError {
714    UnknownValue(serde_json::Value),
715}
716/// struct for typed errors of method [`TwoFactorApi::put_web_authn`]
717#[derive(Debug, Clone, Serialize, Deserialize)]
718#[serde(untagged)]
719pub enum PutWebAuthnError {
720    UnknownValue(serde_json::Value),
721}
722/// struct for typed errors of method [`TwoFactorApi::put_yubi_key`]
723#[derive(Debug, Clone, Serialize, Deserialize)]
724#[serde(untagged)]
725pub enum PutYubiKeyError {
726    UnknownValue(serde_json::Value),
727}
728/// struct for typed errors of method [`TwoFactorApi::send_email`]
729#[derive(Debug, Clone, Serialize, Deserialize)]
730#[serde(untagged)]
731pub enum SendEmailError {
732    UnknownValue(serde_json::Value),
733}
734/// struct for typed errors of method [`TwoFactorApi::send_email_login`]
735#[derive(Debug, Clone, Serialize, Deserialize)]
736#[serde(untagged)]
737pub enum SendEmailLoginError {
738    UnknownValue(serde_json::Value),
739}