vapi_client/models/
create_vapi_phone_number_dto.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct CreateVapiPhoneNumberDto {
16 #[serde(rename = "fallbackDestination", skip_serializing_if = "Option::is_none")]
17 pub fallback_destination: Option<models::ImportTwilioPhoneNumberDtoFallbackDestination>,
18 #[serde(rename = "hooks", skip_serializing_if = "Option::is_none")]
20 pub hooks: Option<Vec<serde_json::Value>>,
21 #[serde(rename = "provider")]
23 pub provider: Provider,
24 #[serde(rename = "numberDesiredAreaCode", skip_serializing_if = "Option::is_none")]
26 pub number_desired_area_code: Option<String>,
27 #[serde(rename = "sipUri", skip_serializing_if = "Option::is_none")]
29 pub sip_uri: Option<String>,
30 #[serde(rename = "authentication", skip_serializing_if = "Option::is_none")]
32 pub authentication: Option<models::SipAuthentication>,
33 #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
35 pub name: Option<String>,
36 #[serde(rename = "assistantId", skip_serializing_if = "Option::is_none")]
38 pub assistant_id: Option<String>,
39 #[serde(rename = "squadId", skip_serializing_if = "Option::is_none")]
41 pub squad_id: Option<String>,
42 #[serde(rename = "server", skip_serializing_if = "Option::is_none")]
44 pub server: Option<models::Server>,
45}
46
47impl CreateVapiPhoneNumberDto {
48 pub fn new(provider: Provider) -> CreateVapiPhoneNumberDto {
49 CreateVapiPhoneNumberDto {
50 fallback_destination: None,
51 hooks: None,
52 provider,
53 number_desired_area_code: None,
54 sip_uri: None,
55 authentication: None,
56 name: None,
57 assistant_id: None,
58 squad_id: None,
59 server: None,
60 }
61 }
62}
63#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
65pub enum Provider {
66 #[serde(rename = "vapi")]
67 Vapi,
68}
69
70impl Default for Provider {
71 fn default() -> Provider {
72 Self::Vapi
73 }
74}
75