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