vapi_client/models/
artifact.rs1use serde::{Deserialize, Serialize};
12use utoipa::ToSchema;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
18pub struct Artifact {
19 #[serde(rename = "messages", skip_serializing_if = "Option::is_none")]
21 pub messages: Option<Vec<models::ArtifactMessagesInner>>,
22 #[serde(
24 rename = "messagesOpenAIFormatted",
25 skip_serializing_if = "Option::is_none"
26 )]
27 pub messages_open_ai_formatted: Option<Vec<models::OpenAiMessage>>,
28 #[serde(rename = "recordingUrl", skip_serializing_if = "Option::is_none")]
30 pub recording_url: Option<String>,
31 #[serde(rename = "stereoRecordingUrl", skip_serializing_if = "Option::is_none")]
33 pub stereo_recording_url: Option<String>,
34 #[serde(rename = "videoRecordingUrl", skip_serializing_if = "Option::is_none")]
36 pub video_recording_url: Option<String>,
37 #[serde(
39 rename = "videoRecordingStartDelaySeconds",
40 skip_serializing_if = "Option::is_none"
41 )]
42 pub video_recording_start_delay_seconds: Option<f64>,
43 #[serde(rename = "transcript", skip_serializing_if = "Option::is_none")]
45 pub transcript: Option<String>,
46 #[serde(rename = "pcapUrl", skip_serializing_if = "Option::is_none")]
48 pub pcap_url: Option<String>,
49}
50
51impl Artifact {
52 pub fn new() -> Artifact {
53 Artifact {
54 messages: None,
55 messages_open_ai_formatted: None,
56 recording_url: None,
57 stereo_recording_url: None,
58 video_recording_url: None,
59 video_recording_start_delay_seconds: None,
60 transcript: None,
61 pcap_url: None,
62 }
63 }
64}