vapi_client/models/
cloudflare_credential.rs1use serde::{Deserialize, Serialize};
12use utoipa::ToSchema;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
18pub struct CloudflareCredential {
19 #[serde(rename = "provider")]
21 pub provider: Provider,
22 #[serde(rename = "accountId", skip_serializing_if = "Option::is_none")]
24 pub account_id: Option<String>,
25 #[serde(rename = "apiKey", skip_serializing_if = "Option::is_none")]
27 pub api_key: Option<String>,
28 #[serde(rename = "accountEmail", skip_serializing_if = "Option::is_none")]
30 pub account_email: Option<String>,
31 #[serde(rename = "id")]
33 pub id: String,
34 #[serde(rename = "orgId")]
36 pub org_id: String,
37 #[serde(rename = "createdAt")]
39 pub created_at: String,
40 #[serde(rename = "updatedAt")]
42 pub updated_at: String,
43 #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
45 pub name: Option<String>,
46 #[serde(rename = "bucketPlan", skip_serializing_if = "Option::is_none")]
48 pub bucket_plan: Option<models::CloudflareR2BucketPlan>,
49}
50
51impl CloudflareCredential {
52 pub fn new(
53 provider: Provider,
54 id: String,
55 org_id: String,
56 created_at: String,
57 updated_at: String,
58 ) -> CloudflareCredential {
59 CloudflareCredential {
60 provider,
61 account_id: None,
62 api_key: None,
63 account_email: None,
64 id,
65 org_id,
66 created_at,
67 updated_at,
68 name: None,
69 bucket_plan: None,
70 }
71 }
72}
73#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
75pub enum Provider {
76 #[serde(rename = "cloudflare")]
77 Cloudflare,
78}
79
80impl Default for Provider {
81 fn default() -> Provider {
82 Self::Cloudflare
83 }
84}