langfuse_client_base/models/
trace_body.rs

1/*
2 * langfuse
3 *
4 * ## Authentication  Authenticate with the API using [Basic Auth](https://en.wikipedia.org/wiki/Basic_access_authentication), get API keys in the project settings:  - username: Langfuse Public Key - password: Langfuse Secret Key  ## Exports  - OpenAPI spec: https://cloud.langfuse.com/generated/api/openapi.yml - Postman collection: https://cloud.langfuse.com/generated/postman/collection.json
5 *
6 * The version of the OpenAPI document:
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct TraceBody {
16    #[serde(
17        rename = "id",
18        default,
19        with = "::serde_with::rust::double_option",
20        skip_serializing_if = "Option::is_none"
21    )]
22    pub id: Option<Option<String>>,
23    #[serde(
24        rename = "timestamp",
25        default,
26        with = "::serde_with::rust::double_option",
27        skip_serializing_if = "Option::is_none"
28    )]
29    pub timestamp: Option<Option<String>>,
30    #[serde(
31        rename = "name",
32        default,
33        with = "::serde_with::rust::double_option",
34        skip_serializing_if = "Option::is_none"
35    )]
36    pub name: Option<Option<String>>,
37    #[serde(
38        rename = "userId",
39        default,
40        with = "::serde_with::rust::double_option",
41        skip_serializing_if = "Option::is_none"
42    )]
43    pub user_id: Option<Option<String>>,
44    #[serde(
45        rename = "input",
46        default,
47        with = "::serde_with::rust::double_option",
48        skip_serializing_if = "Option::is_none"
49    )]
50    pub input: Option<Option<serde_json::Value>>,
51    #[serde(
52        rename = "output",
53        default,
54        with = "::serde_with::rust::double_option",
55        skip_serializing_if = "Option::is_none"
56    )]
57    pub output: Option<Option<serde_json::Value>>,
58    #[serde(
59        rename = "sessionId",
60        default,
61        with = "::serde_with::rust::double_option",
62        skip_serializing_if = "Option::is_none"
63    )]
64    pub session_id: Option<Option<String>>,
65    #[serde(
66        rename = "release",
67        default,
68        with = "::serde_with::rust::double_option",
69        skip_serializing_if = "Option::is_none"
70    )]
71    pub release: Option<Option<String>>,
72    #[serde(
73        rename = "version",
74        default,
75        with = "::serde_with::rust::double_option",
76        skip_serializing_if = "Option::is_none"
77    )]
78    pub version: Option<Option<String>>,
79    #[serde(
80        rename = "metadata",
81        default,
82        with = "::serde_with::rust::double_option",
83        skip_serializing_if = "Option::is_none"
84    )]
85    pub metadata: Option<Option<serde_json::Value>>,
86    #[serde(
87        rename = "tags",
88        default,
89        with = "::serde_with::rust::double_option",
90        skip_serializing_if = "Option::is_none"
91    )]
92    pub tags: Option<Option<Vec<String>>>,
93    #[serde(
94        rename = "environment",
95        default,
96        with = "::serde_with::rust::double_option",
97        skip_serializing_if = "Option::is_none"
98    )]
99    pub environment: Option<Option<String>>,
100    /// Make trace publicly accessible via url
101    #[serde(
102        rename = "public",
103        default,
104        with = "::serde_with::rust::double_option",
105        skip_serializing_if = "Option::is_none"
106    )]
107    pub public: Option<Option<bool>>,
108}
109
110impl TraceBody {
111    pub fn new() -> TraceBody {
112        TraceBody {
113            id: None,
114            timestamp: None,
115            name: None,
116            user_id: None,
117            input: None,
118            output: None,
119            session_id: None,
120            release: None,
121            version: None,
122            metadata: None,
123            tags: None,
124            environment: None,
125            public: None,
126        }
127    }
128}