vapi_client/models/
chat_completion_message.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct ChatCompletionMessage {
17 #[serde(rename = "role")]
18 pub role: serde_json::Value,
19 #[serde(rename = "content", deserialize_with = "Option::deserialize")]
20 pub content: Option<String>,
21 #[serde(rename = "metadata", skip_serializing_if = "Option::is_none")]
22 pub metadata: Option<models::ChatCompletionMessageMetadata>,
23}
24
25impl ChatCompletionMessage {
26 pub fn new(role: serde_json::Value, content: Option<String>) -> ChatCompletionMessage {
27 ChatCompletionMessage {
28 role,
29 content,
30 metadata: None,
31 }
32 }
33}