langfuse_client_base/models/
upsert_llm_connection_request.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, bon::Builder)]
16pub struct UpsertLlmConnectionRequest {
17 #[serde(rename = "provider")]
19 pub provider: String,
20 #[serde(rename = "adapter")]
21 pub adapter: models::LlmAdapter,
22 #[serde(rename = "secretKey")]
24 pub secret_key: String,
25 #[serde(
27 rename = "baseURL",
28 default,
29 with = "::serde_with::rust::double_option",
30 skip_serializing_if = "Option::is_none"
31 )]
32 pub base_url: Option<Option<String>>,
33 #[serde(
35 rename = "customModels",
36 default,
37 with = "::serde_with::rust::double_option",
38 skip_serializing_if = "Option::is_none"
39 )]
40 pub custom_models: Option<Option<Vec<String>>>,
41 #[serde(
43 rename = "withDefaultModels",
44 default,
45 with = "::serde_with::rust::double_option",
46 skip_serializing_if = "Option::is_none"
47 )]
48 pub with_default_models: Option<Option<bool>>,
49 #[serde(
51 rename = "extraHeaders",
52 default,
53 with = "::serde_with::rust::double_option",
54 skip_serializing_if = "Option::is_none"
55 )]
56 pub extra_headers: Option<Option<std::collections::HashMap<String, String>>>,
57 #[serde(
59 rename = "config",
60 default,
61 with = "::serde_with::rust::double_option",
62 skip_serializing_if = "Option::is_none"
63 )]
64 pub config: Option<Option<std::collections::HashMap<String, serde_json::Value>>>,
65}
66
67impl UpsertLlmConnectionRequest {
68 pub fn new(
70 provider: String,
71 adapter: models::LlmAdapter,
72 secret_key: String,
73 ) -> UpsertLlmConnectionRequest {
74 UpsertLlmConnectionRequest {
75 provider,
76 adapter,
77 secret_key,
78 base_url: None,
79 custom_models: None,
80 with_default_models: None,
81 extra_headers: None,
82 config: None,
83 }
84 }
85}