langfuse_client_base/models/
create_span_body.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct CreateSpanBody {
16 #[serde(
17 rename = "endTime",
18 default,
19 with = "::serde_with::rust::double_option",
20 skip_serializing_if = "Option::is_none"
21 )]
22 pub end_time: Option<Option<String>>,
23 #[serde(
24 rename = "id",
25 default,
26 with = "::serde_with::rust::double_option",
27 skip_serializing_if = "Option::is_none"
28 )]
29 pub id: Option<Option<String>>,
30 #[serde(
31 rename = "traceId",
32 default,
33 with = "::serde_with::rust::double_option",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub trace_id: Option<Option<String>>,
37 #[serde(
38 rename = "name",
39 default,
40 with = "::serde_with::rust::double_option",
41 skip_serializing_if = "Option::is_none"
42 )]
43 pub name: Option<Option<String>>,
44 #[serde(
45 rename = "startTime",
46 default,
47 with = "::serde_with::rust::double_option",
48 skip_serializing_if = "Option::is_none"
49 )]
50 pub start_time: Option<Option<String>>,
51 #[serde(
52 rename = "metadata",
53 default,
54 with = "::serde_with::rust::double_option",
55 skip_serializing_if = "Option::is_none"
56 )]
57 pub metadata: Option<Option<serde_json::Value>>,
58 #[serde(
59 rename = "input",
60 default,
61 with = "::serde_with::rust::double_option",
62 skip_serializing_if = "Option::is_none"
63 )]
64 pub input: Option<Option<serde_json::Value>>,
65 #[serde(
66 rename = "output",
67 default,
68 with = "::serde_with::rust::double_option",
69 skip_serializing_if = "Option::is_none"
70 )]
71 pub output: Option<Option<serde_json::Value>>,
72 #[serde(rename = "level", skip_serializing_if = "Option::is_none")]
73 pub level: Option<models::ObservationLevel>,
74 #[serde(
75 rename = "statusMessage",
76 default,
77 with = "::serde_with::rust::double_option",
78 skip_serializing_if = "Option::is_none"
79 )]
80 pub status_message: Option<Option<String>>,
81 #[serde(
82 rename = "parentObservationId",
83 default,
84 with = "::serde_with::rust::double_option",
85 skip_serializing_if = "Option::is_none"
86 )]
87 pub parent_observation_id: Option<Option<String>>,
88 #[serde(
89 rename = "version",
90 default,
91 with = "::serde_with::rust::double_option",
92 skip_serializing_if = "Option::is_none"
93 )]
94 pub version: Option<Option<String>>,
95 #[serde(
96 rename = "environment",
97 default,
98 with = "::serde_with::rust::double_option",
99 skip_serializing_if = "Option::is_none"
100 )]
101 pub environment: Option<Option<String>>,
102}
103
104impl CreateSpanBody {
105 pub fn new() -> CreateSpanBody {
106 CreateSpanBody {
107 end_time: None,
108 id: None,
109 trace_id: None,
110 name: None,
111 start_time: None,
112 metadata: None,
113 input: None,
114 output: None,
115 level: None,
116 status_message: None,
117 parent_observation_id: None,
118 version: None,
119 environment: None,
120 }
121 }
122}