bitwarden_api_api/models/
organization_subscription_purchase_request.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct OrganizationSubscriptionPurchaseRequest {
17 #[serde(rename = "tier", alias = "Tier")]
18 pub tier: models::ProductTierType,
19 #[serde(rename = "cadence", alias = "Cadence")]
20 pub cadence: models::PlanCadenceType,
21 #[serde(rename = "passwordManager", alias = "PasswordManager")]
22 pub password_manager: Box<models::PasswordManagerPurchaseSelections>,
23 #[serde(
24 rename = "secretsManager",
25 alias = "SecretsManager",
26 skip_serializing_if = "Option::is_none"
27 )]
28 pub secrets_manager: Option<Box<models::SecretsManagerPurchaseSelections>>,
29 #[serde(
30 rename = "coupons",
31 alias = "Coupons",
32 skip_serializing_if = "Option::is_none"
33 )]
34 pub coupons: Option<Vec<String>>,
35}
36
37impl OrganizationSubscriptionPurchaseRequest {
38 pub fn new(
39 tier: models::ProductTierType,
40 cadence: models::PlanCadenceType,
41 password_manager: models::PasswordManagerPurchaseSelections,
42 ) -> OrganizationSubscriptionPurchaseRequest {
43 OrganizationSubscriptionPurchaseRequest {
44 tier,
45 cadence,
46 password_manager: Box::new(password_manager),
47 secrets_manager: None,
48 coupons: None,
49 }
50 }
51}