langfuse_client_base/models/
create_dataset_request.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, bon::Builder)]
15pub struct CreateDatasetRequest {
16 #[serde(rename = "name")]
17 pub name: String,
18 #[serde(
19 rename = "description",
20 default,
21 with = "::serde_with::rust::double_option",
22 skip_serializing_if = "Option::is_none"
23 )]
24 pub description: Option<Option<String>>,
25 #[serde(
26 rename = "metadata",
27 default,
28 with = "::serde_with::rust::double_option",
29 skip_serializing_if = "Option::is_none"
30 )]
31 pub metadata: Option<Option<serde_json::Value>>,
32 #[serde(
34 rename = "inputSchema",
35 default,
36 with = "::serde_with::rust::double_option",
37 skip_serializing_if = "Option::is_none"
38 )]
39 pub input_schema: Option<Option<serde_json::Value>>,
40 #[serde(
42 rename = "expectedOutputSchema",
43 default,
44 with = "::serde_with::rust::double_option",
45 skip_serializing_if = "Option::is_none"
46 )]
47 pub expected_output_schema: Option<Option<serde_json::Value>>,
48}
49
50impl CreateDatasetRequest {
51 pub fn new(name: String) -> CreateDatasetRequest {
52 CreateDatasetRequest {
53 name,
54 description: None,
55 metadata: None,
56 input_schema: None,
57 expected_output_schema: None,
58 }
59 }
60}