vapi_client/models/
azure_credential.rs

1/*
2 * Vapi API
3 *
4 * API for building voice assistants
5 *
6 * The version of the OpenAPI document: 1.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12use utoipa::OpenApi;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, OpenApi)]
18pub struct AzureCredential {
19    #[serde(rename = "provider")]
20    pub provider: Provider,
21    /// This is the service being used in Azure.
22    #[serde(rename = "service")]
23    pub service: Service,
24    /// This is the region of the Azure resource.
25    #[serde(rename = "region", skip_serializing_if = "Option::is_none")]
26    pub region: Option<Region>,
27    /// This is not returned in the API.
28    #[serde(rename = "apiKey", skip_serializing_if = "Option::is_none")]
29    pub api_key: Option<String>,
30    /// This is the unique identifier for the credential.
31    #[serde(rename = "id")]
32    pub id: String,
33    /// This is the unique identifier for the org that this credential belongs to.
34    #[serde(rename = "orgId")]
35    pub org_id: String,
36    /// This is the ISO 8601 date-time string of when the credential was created.
37    #[serde(rename = "createdAt")]
38    pub created_at: String,
39    /// This is the ISO 8601 date-time string of when the assistant was last updated.
40    #[serde(rename = "updatedAt")]
41    pub updated_at: String,
42    /// This is the name of credential. This is just for your reference.
43    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
44    pub name: Option<String>,
45    /// This is the bucket plan that can be provided to store call artifacts in Azure Blob Storage.
46    #[serde(rename = "bucketPlan", skip_serializing_if = "Option::is_none")]
47    pub bucket_plan: Option<models::AzureBlobStorageBucketPlan>,
48}
49
50impl AzureCredential {
51    pub fn new(
52        provider: Provider,
53        service: Service,
54        id: String,
55        org_id: String,
56        created_at: String,
57        updated_at: String,
58    ) -> AzureCredential {
59        AzureCredential {
60            provider,
61            service,
62            region: None,
63            api_key: None,
64            id,
65            org_id,
66            created_at,
67            updated_at,
68            name: None,
69            bucket_plan: None,
70        }
71    }
72}
73///
74#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
75pub enum Provider {
76    #[serde(rename = "azure")]
77    Azure,
78}
79
80impl Default for Provider {
81    fn default() -> Provider {
82        Self::Azure
83    }
84}
85/// This is the service being used in Azure.
86#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
87pub enum Service {
88    #[serde(rename = "speech")]
89    Speech,
90    #[serde(rename = "blob_storage")]
91    BlobStorage,
92}
93
94impl Default for Service {
95    fn default() -> Service {
96        Self::Speech
97    }
98}
99/// This is the region of the Azure resource.
100#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
101pub enum Region {
102    #[serde(rename = "australia")]
103    Australia,
104    #[serde(rename = "canadaeast")]
105    Canadaeast,
106    #[serde(rename = "canadacentral")]
107    Canadacentral,
108    #[serde(rename = "eastus2")]
109    Eastus2,
110    #[serde(rename = "eastus")]
111    Eastus,
112    #[serde(rename = "france")]
113    France,
114    #[serde(rename = "india")]
115    India,
116    #[serde(rename = "japaneast")]
117    Japaneast,
118    #[serde(rename = "japanwest")]
119    Japanwest,
120    #[serde(rename = "uaenorth")]
121    Uaenorth,
122    #[serde(rename = "northcentralus")]
123    Northcentralus,
124    #[serde(rename = "norway")]
125    Norway,
126    #[serde(rename = "southcentralus")]
127    Southcentralus,
128    #[serde(rename = "swedencentral")]
129    Swedencentral,
130    #[serde(rename = "switzerland")]
131    Switzerland,
132    #[serde(rename = "uk")]
133    Uk,
134    #[serde(rename = "westus")]
135    Westus,
136    #[serde(rename = "westus3")]
137    Westus3,
138}
139
140impl Default for Region {
141    fn default() -> Region {
142        Self::Australia
143    }
144}