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