bitwarden_api_api/models/
organization_no_payment_create_request.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct OrganizationNoPaymentCreateRequest {
17 #[serde(rename = "name", alias = "Name")]
18 pub name: String,
19 #[serde(
20 rename = "businessName",
21 alias = "BusinessName",
22 skip_serializing_if = "Option::is_none"
23 )]
24 pub business_name: Option<String>,
25 #[serde(rename = "billingEmail", alias = "BillingEmail")]
26 pub billing_email: String,
27 #[serde(
28 rename = "planType",
29 alias = "PlanType",
30 skip_serializing_if = "Option::is_none"
31 )]
32 pub plan_type: Option<models::PlanType>,
33 #[serde(rename = "key", alias = "Key")]
34 pub key: String,
35 #[serde(rename = "keys", alias = "Keys")]
36 pub keys: Box<models::OrganizationKeysRequestModel>,
37 #[serde(
38 rename = "paymentMethodType",
39 alias = "PaymentMethodType",
40 skip_serializing_if = "Option::is_none"
41 )]
42 pub payment_method_type: Option<models::PaymentMethodType>,
43 #[serde(
44 rename = "paymentToken",
45 alias = "PaymentToken",
46 skip_serializing_if = "Option::is_none"
47 )]
48 pub payment_token: Option<String>,
49 #[serde(
50 rename = "additionalSeats",
51 alias = "AdditionalSeats",
52 skip_serializing_if = "Option::is_none"
53 )]
54 pub additional_seats: Option<i32>,
55 #[serde(
56 rename = "additionalStorageGb",
57 alias = "AdditionalStorageGb",
58 skip_serializing_if = "Option::is_none"
59 )]
60 pub additional_storage_gb: Option<i32>,
61 #[serde(
62 rename = "premiumAccessAddon",
63 alias = "PremiumAccessAddon",
64 skip_serializing_if = "Option::is_none"
65 )]
66 pub premium_access_addon: Option<bool>,
67 #[serde(
68 rename = "collectionName",
69 alias = "CollectionName",
70 skip_serializing_if = "Option::is_none"
71 )]
72 pub collection_name: Option<String>,
73 #[serde(
74 rename = "taxIdNumber",
75 alias = "TaxIdNumber",
76 skip_serializing_if = "Option::is_none"
77 )]
78 pub tax_id_number: Option<String>,
79 #[serde(
80 rename = "billingAddressLine1",
81 alias = "BillingAddressLine1",
82 skip_serializing_if = "Option::is_none"
83 )]
84 pub billing_address_line1: Option<String>,
85 #[serde(
86 rename = "billingAddressLine2",
87 alias = "BillingAddressLine2",
88 skip_serializing_if = "Option::is_none"
89 )]
90 pub billing_address_line2: Option<String>,
91 #[serde(
92 rename = "billingAddressCity",
93 alias = "BillingAddressCity",
94 skip_serializing_if = "Option::is_none"
95 )]
96 pub billing_address_city: Option<String>,
97 #[serde(
98 rename = "billingAddressState",
99 alias = "BillingAddressState",
100 skip_serializing_if = "Option::is_none"
101 )]
102 pub billing_address_state: Option<String>,
103 #[serde(
104 rename = "billingAddressPostalCode",
105 alias = "BillingAddressPostalCode",
106 skip_serializing_if = "Option::is_none"
107 )]
108 pub billing_address_postal_code: Option<String>,
109 #[serde(
110 rename = "billingAddressCountry",
111 alias = "BillingAddressCountry",
112 skip_serializing_if = "Option::is_none"
113 )]
114 pub billing_address_country: Option<String>,
115 #[serde(
116 rename = "maxAutoscaleSeats",
117 alias = "MaxAutoscaleSeats",
118 skip_serializing_if = "Option::is_none"
119 )]
120 pub max_autoscale_seats: Option<i32>,
121 #[serde(
122 rename = "additionalSmSeats",
123 alias = "AdditionalSmSeats",
124 skip_serializing_if = "Option::is_none"
125 )]
126 pub additional_sm_seats: Option<i32>,
127 #[serde(
128 rename = "additionalServiceAccounts",
129 alias = "AdditionalServiceAccounts",
130 skip_serializing_if = "Option::is_none"
131 )]
132 pub additional_service_accounts: Option<i32>,
133 #[serde(rename = "useSecretsManager", alias = "UseSecretsManager")]
134 pub use_secrets_manager: bool,
135 #[serde(
136 rename = "isFromSecretsManagerTrial",
137 alias = "IsFromSecretsManagerTrial",
138 skip_serializing_if = "Option::is_none"
139 )]
140 pub is_from_secrets_manager_trial: Option<bool>,
141 #[serde(
142 rename = "initiationPath",
143 alias = "InitiationPath",
144 skip_serializing_if = "Option::is_none"
145 )]
146 pub initiation_path: Option<String>,
147}
148
149impl OrganizationNoPaymentCreateRequest {
150 pub fn new(
151 name: String,
152 billing_email: String,
153 key: String,
154 keys: models::OrganizationKeysRequestModel,
155 use_secrets_manager: bool,
156 ) -> OrganizationNoPaymentCreateRequest {
157 OrganizationNoPaymentCreateRequest {
158 name,
159 business_name: None,
160 billing_email,
161 plan_type: None,
162 key,
163 keys: Box::new(keys),
164 payment_method_type: None,
165 payment_token: None,
166 additional_seats: None,
167 additional_storage_gb: None,
168 premium_access_addon: None,
169 collection_name: None,
170 tax_id_number: None,
171 billing_address_line1: None,
172 billing_address_line2: None,
173 billing_address_city: None,
174 billing_address_state: None,
175 billing_address_postal_code: None,
176 billing_address_country: None,
177 max_autoscale_seats: None,
178 additional_sm_seats: None,
179 additional_service_accounts: None,
180 use_secrets_manager,
181 is_from_secrets_manager_trial: None,
182 initiation_path: None,
183 }
184 }
185}