vapi_client/models/
org.rs1use serde::{Deserialize, Serialize};
12use utoipa::ToSchema;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
18pub struct Org {
19 #[serde(rename = "hipaaEnabled", skip_serializing_if = "Option::is_none")]
21 pub hipaa_enabled: Option<bool>,
22 #[serde(rename = "subscription", skip_serializing_if = "Option::is_none")]
23 pub subscription: Option<models::Subscription>,
24 #[serde(rename = "subscriptionId", skip_serializing_if = "Option::is_none")]
26 pub subscription_id: Option<String>,
27 #[serde(rename = "id")]
29 pub id: String,
30 #[serde(rename = "createdAt")]
32 pub created_at: String,
33 #[serde(rename = "updatedAt")]
35 pub updated_at: String,
36 #[serde(rename = "stripeCustomerId", skip_serializing_if = "Option::is_none")]
38 pub stripe_customer_id: Option<String>,
39 #[serde(
41 rename = "stripeSubscriptionId",
42 skip_serializing_if = "Option::is_none"
43 )]
44 pub stripe_subscription_id: Option<String>,
45 #[serde(
47 rename = "stripeSubscriptionItemId",
48 skip_serializing_if = "Option::is_none"
49 )]
50 pub stripe_subscription_item_id: Option<String>,
51 #[serde(
53 rename = "stripeSubscriptionCurrentPeriodStart",
54 skip_serializing_if = "Option::is_none"
55 )]
56 pub stripe_subscription_current_period_start: Option<String>,
57 #[serde(
59 rename = "stripeSubscriptionStatus",
60 skip_serializing_if = "Option::is_none"
61 )]
62 pub stripe_subscription_status: Option<String>,
63 #[serde(rename = "plan", skip_serializing_if = "Option::is_none")]
65 pub plan: Option<models::OrgPlan>,
66 #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
68 pub name: Option<String>,
69 #[serde(rename = "channel", skip_serializing_if = "Option::is_none")]
71 pub channel: Option<Channel>,
72 #[serde(rename = "billingLimit", skip_serializing_if = "Option::is_none")]
74 pub billing_limit: Option<f64>,
75 #[serde(rename = "server", skip_serializing_if = "Option::is_none")]
77 pub server: Option<models::Server>,
78 #[serde(rename = "concurrencyLimit", skip_serializing_if = "Option::is_none")]
80 pub concurrency_limit: Option<f64>,
81}
82
83impl Org {
84 pub fn new(id: String, created_at: String, updated_at: String) -> Org {
85 Org {
86 hipaa_enabled: None,
87 subscription: None,
88 subscription_id: None,
89 id,
90 created_at,
91 updated_at,
92 stripe_customer_id: None,
93 stripe_subscription_id: None,
94 stripe_subscription_item_id: None,
95 stripe_subscription_current_period_start: None,
96 stripe_subscription_status: None,
97 plan: None,
98 name: None,
99 channel: None,
100 billing_limit: None,
101 server: None,
102 concurrency_limit: None,
103 }
104 }
105}
106#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
108pub enum Channel {
109 #[serde(rename = "default")]
110 Default,
111 #[serde(rename = "weekly")]
112 Weekly,
113}
114
115impl Default for Channel {
116 fn default() -> Channel {
117 Self::Default
118 }
119}