vapi_client/models/
s3_credential.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct S3Credential {
16 #[serde(rename = "provider")]
18 pub provider: Provider,
19 #[serde(rename = "awsAccessKeyId")]
21 pub aws_access_key_id: String,
22 #[serde(rename = "awsSecretAccessKey")]
24 pub aws_secret_access_key: String,
25 #[serde(rename = "region")]
27 pub region: String,
28 #[serde(rename = "s3BucketName")]
30 pub s3_bucket_name: String,
31 #[serde(rename = "s3PathPrefix")]
33 pub s3_path_prefix: String,
34 #[serde(rename = "id")]
36 pub id: String,
37 #[serde(rename = "orgId")]
39 pub org_id: String,
40 #[serde(rename = "createdAt")]
42 pub created_at: String,
43 #[serde(rename = "updatedAt")]
45 pub updated_at: String,
46 #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
48 pub name: Option<String>,
49}
50
51impl S3Credential {
52 pub fn new(provider: Provider, aws_access_key_id: String, aws_secret_access_key: String, region: String, s3_bucket_name: String, s3_path_prefix: String, id: String, org_id: String, created_at: String, updated_at: String) -> S3Credential {
53 S3Credential {
54 provider,
55 aws_access_key_id,
56 aws_secret_access_key,
57 region,
58 s3_bucket_name,
59 s3_path_prefix,
60 id,
61 org_id,
62 created_at,
63 updated_at,
64 name: None,
65 }
66 }
67}
68#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
70pub enum Provider {
71 #[serde(rename = "s3")]
72 S3,
73}
74
75impl Default for Provider {
76 fn default() -> Provider {
77 Self::S3
78 }
79}
80