trieve_client/models/
create_message_req_payload.rs1use crate::models;
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
14pub struct CreateMessageReqPayload {
15 #[serde(rename = "concat_user_messages_query", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
17 pub concat_user_messages_query: Option<Option<bool>>,
18 #[serde(rename = "filters", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
19 pub filters: Option<Option<Box<models::ChunkFilter>>>,
20 #[serde(rename = "highlight_options", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
21 pub highlight_options: Option<Option<Box<models::HighlightOptions>>>,
22 #[serde(rename = "llm_options", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
23 pub llm_options: Option<Option<Box<models::LlmOptions>>>,
24 #[serde(rename = "new_message_content")]
26 pub new_message_content: String,
27 #[serde(rename = "page_size", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
29 pub page_size: Option<Option<i64>>,
30 #[serde(rename = "score_threshold", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
32 pub score_threshold: Option<Option<f32>>,
33 #[serde(rename = "search_query", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
35 pub search_query: Option<Option<String>>,
36 #[serde(rename = "search_type", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
37 pub search_type: Option<Option<models::SearchMethod>>,
38 #[serde(rename = "topic_id")]
40 pub topic_id: uuid::Uuid,
41 #[serde(rename = "user_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
43 pub user_id: Option<Option<String>>,
44}
45
46impl CreateMessageReqPayload {
47 pub fn new(new_message_content: String, topic_id: uuid::Uuid) -> CreateMessageReqPayload {
48 CreateMessageReqPayload {
49 concat_user_messages_query: None,
50 filters: None,
51 highlight_options: None,
52 llm_options: None,
53 new_message_content,
54 page_size: None,
55 score_threshold: None,
56 search_query: None,
57 search_type: None,
58 topic_id,
59 user_id: None,
60 }
61 }
62}
63