bitwarden_api_identity/models/
trial_send_verification_email_request_model.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct TrialSendVerificationEmailRequestModel {
17 #[serde(
18 rename = "name",
19 alias = "Name",
20 skip_serializing_if = "Option::is_none"
21 )]
22 pub name: Option<String>,
23 #[serde(rename = "email", alias = "Email")]
24 pub email: Option<String>,
25 #[serde(
26 rename = "receiveMarketingEmails",
27 alias = "ReceiveMarketingEmails",
28 skip_serializing_if = "Option::is_none"
29 )]
30 pub receive_marketing_emails: Option<bool>,
31 #[serde(
32 rename = "fromMarketing",
33 alias = "FromMarketing",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub from_marketing: Option<String>,
37 #[serde(
38 rename = "productTier",
39 alias = "ProductTier",
40 skip_serializing_if = "Option::is_none"
41 )]
42 pub product_tier: Option<models::ProductTierType>,
43 #[serde(
44 rename = "products",
45 alias = "Products",
46 skip_serializing_if = "Option::is_none"
47 )]
48 pub products: Option<Vec<models::ProductType>>,
49 #[serde(
50 rename = "trialLength",
51 alias = "TrialLength",
52 skip_serializing_if = "Option::is_none"
53 )]
54 pub trial_length: Option<i32>,
55 #[serde(
56 rename = "paymentOptional",
57 alias = "PaymentOptional",
58 skip_serializing_if = "Option::is_none"
59 )]
60 pub payment_optional: Option<bool>,
61}
62
63impl TrialSendVerificationEmailRequestModel {
64 pub fn new(email: Option<String>) -> TrialSendVerificationEmailRequestModel {
65 TrialSendVerificationEmailRequestModel {
66 name: None,
67 email,
68 receive_marketing_emails: None,
69 from_marketing: None,
70 product_tier: None,
71 products: None,
72 trial_length: None,
73 payment_optional: None,
74 }
75 }
76}