vapi_client/apis/
logs_api.rs1use super::{configuration, ContentType, Error};
12use crate::{apis::ResponseContent, models};
13use reqwest;
14use serde::{de::Error as _, Deserialize, Serialize};
15
16#[derive(Debug, Clone, Serialize, Deserialize)]
18#[serde(untagged)]
19pub enum LoggingControllerLogsDeleteQueryError {
20 UnknownValue(serde_json::Value),
21}
22
23#[derive(Debug, Clone, Serialize, Deserialize)]
25#[serde(untagged)]
26pub enum LoggingControllerLogsQueryError {
27 UnknownValue(serde_json::Value),
28}
29
30pub async fn logging_controller_logs_delete_query(
31 configuration: &configuration::Configuration,
32 r#type: Option<&str>,
33 assistant_id: Option<&str>,
34 phone_number_id: Option<&str>,
35 customer_id: Option<&str>,
36 squad_id: Option<&str>,
37 call_id: Option<&str>,
38) -> Result<(), Error<LoggingControllerLogsDeleteQueryError>> {
39 let p_type = r#type;
41 let p_assistant_id = assistant_id;
42 let p_phone_number_id = phone_number_id;
43 let p_customer_id = customer_id;
44 let p_squad_id = squad_id;
45 let p_call_id = call_id;
46
47 let uri_str = format!("{}/logs", configuration.base_path);
48 let mut req_builder = configuration
49 .client
50 .request(reqwest::Method::DELETE, &uri_str);
51
52 if let Some(ref param_value) = p_type {
53 req_builder = req_builder.query(&[("type", ¶m_value.to_string())]);
54 }
55 if let Some(ref param_value) = p_assistant_id {
56 req_builder = req_builder.query(&[("assistantId", ¶m_value.to_string())]);
57 }
58 if let Some(ref param_value) = p_phone_number_id {
59 req_builder = req_builder.query(&[("phoneNumberId", ¶m_value.to_string())]);
60 }
61 if let Some(ref param_value) = p_customer_id {
62 req_builder = req_builder.query(&[("customerId", ¶m_value.to_string())]);
63 }
64 if let Some(ref param_value) = p_squad_id {
65 req_builder = req_builder.query(&[("squadId", ¶m_value.to_string())]);
66 }
67 if let Some(ref param_value) = p_call_id {
68 req_builder = req_builder.query(&[("callId", ¶m_value.to_string())]);
69 }
70 if let Some(ref user_agent) = configuration.user_agent {
71 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
72 }
73 if let Some(ref token) = configuration.bearer_access_token {
74 req_builder = req_builder.bearer_auth(token.to_owned());
75 };
76
77 let req = req_builder.build()?;
78 let resp = configuration.client.execute(req).await?;
79
80 let status = resp.status();
81
82 if !status.is_client_error() && !status.is_server_error() {
83 Ok(())
84 } else {
85 let content = resp.text().await?;
86 let entity: Option<LoggingControllerLogsDeleteQueryError> =
87 serde_json::from_str(&content).ok();
88 Err(Error::ResponseError(ResponseContent {
89 status,
90 content,
91 entity,
92 }))
93 }
94}
95
96pub async fn logging_controller_logs_query(
97 configuration: &configuration::Configuration,
98 r#type: Option<&str>,
99 webhook_type: Option<&str>,
100 assistant_id: Option<&str>,
101 phone_number_id: Option<&str>,
102 customer_id: Option<&str>,
103 squad_id: Option<&str>,
104 call_id: Option<&str>,
105 page: Option<f64>,
106 sort_order: Option<&str>,
107 limit: Option<f64>,
108 created_at_gt: Option<String>,
109 created_at_lt: Option<String>,
110 created_at_ge: Option<String>,
111 created_at_le: Option<String>,
112 updated_at_gt: Option<String>,
113 updated_at_lt: Option<String>,
114 updated_at_ge: Option<String>,
115 updated_at_le: Option<String>,
116) -> Result<models::LogsPaginatedResponse, Error<LoggingControllerLogsQueryError>> {
117 let p_type = r#type;
119 let p_webhook_type = webhook_type;
120 let p_assistant_id = assistant_id;
121 let p_phone_number_id = phone_number_id;
122 let p_customer_id = customer_id;
123 let p_squad_id = squad_id;
124 let p_call_id = call_id;
125 let p_page = page;
126 let p_sort_order = sort_order;
127 let p_limit = limit;
128 let p_created_at_gt = created_at_gt;
129 let p_created_at_lt = created_at_lt;
130 let p_created_at_ge = created_at_ge;
131 let p_created_at_le = created_at_le;
132 let p_updated_at_gt = updated_at_gt;
133 let p_updated_at_lt = updated_at_lt;
134 let p_updated_at_ge = updated_at_ge;
135 let p_updated_at_le = updated_at_le;
136
137 let uri_str = format!("{}/logs", configuration.base_path);
138 let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
139
140 if let Some(ref param_value) = p_type {
141 req_builder = req_builder.query(&[("type", ¶m_value.to_string())]);
142 }
143 if let Some(ref param_value) = p_webhook_type {
144 req_builder = req_builder.query(&[("webhookType", ¶m_value.to_string())]);
145 }
146 if let Some(ref param_value) = p_assistant_id {
147 req_builder = req_builder.query(&[("assistantId", ¶m_value.to_string())]);
148 }
149 if let Some(ref param_value) = p_phone_number_id {
150 req_builder = req_builder.query(&[("phoneNumberId", ¶m_value.to_string())]);
151 }
152 if let Some(ref param_value) = p_customer_id {
153 req_builder = req_builder.query(&[("customerId", ¶m_value.to_string())]);
154 }
155 if let Some(ref param_value) = p_squad_id {
156 req_builder = req_builder.query(&[("squadId", ¶m_value.to_string())]);
157 }
158 if let Some(ref param_value) = p_call_id {
159 req_builder = req_builder.query(&[("callId", ¶m_value.to_string())]);
160 }
161 if let Some(ref param_value) = p_page {
162 req_builder = req_builder.query(&[("page", ¶m_value.to_string())]);
163 }
164 if let Some(ref param_value) = p_sort_order {
165 req_builder = req_builder.query(&[("sortOrder", ¶m_value.to_string())]);
166 }
167 if let Some(ref param_value) = p_limit {
168 req_builder = req_builder.query(&[("limit", ¶m_value.to_string())]);
169 }
170 if let Some(ref param_value) = p_created_at_gt {
171 req_builder = req_builder.query(&[("createdAtGt", ¶m_value.to_string())]);
172 }
173 if let Some(ref param_value) = p_created_at_lt {
174 req_builder = req_builder.query(&[("createdAtLt", ¶m_value.to_string())]);
175 }
176 if let Some(ref param_value) = p_created_at_ge {
177 req_builder = req_builder.query(&[("createdAtGe", ¶m_value.to_string())]);
178 }
179 if let Some(ref param_value) = p_created_at_le {
180 req_builder = req_builder.query(&[("createdAtLe", ¶m_value.to_string())]);
181 }
182 if let Some(ref param_value) = p_updated_at_gt {
183 req_builder = req_builder.query(&[("updatedAtGt", ¶m_value.to_string())]);
184 }
185 if let Some(ref param_value) = p_updated_at_lt {
186 req_builder = req_builder.query(&[("updatedAtLt", ¶m_value.to_string())]);
187 }
188 if let Some(ref param_value) = p_updated_at_ge {
189 req_builder = req_builder.query(&[("updatedAtGe", ¶m_value.to_string())]);
190 }
191 if let Some(ref param_value) = p_updated_at_le {
192 req_builder = req_builder.query(&[("updatedAtLe", ¶m_value.to_string())]);
193 }
194 if let Some(ref user_agent) = configuration.user_agent {
195 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
196 }
197 if let Some(ref token) = configuration.bearer_access_token {
198 req_builder = req_builder.bearer_auth(token.to_owned());
199 };
200
201 let req = req_builder.build()?;
202 let resp = configuration.client.execute(req).await?;
203
204 let status = resp.status();
205 let content_type = resp
206 .headers()
207 .get("content-type")
208 .and_then(|v| v.to_str().ok())
209 .unwrap_or("application/octet-stream");
210 let content_type = super::ContentType::from(content_type);
211
212 if !status.is_client_error() && !status.is_server_error() {
213 let content = resp.text().await?;
214 match content_type {
215 ContentType::Json => serde_json::from_str(&content).map_err(Error::from),
216 ContentType::Text => return Err(Error::from(serde_json::Error::custom("Received `text/plain` content type response that cannot be converted to `models::LogsPaginatedResponse`"))),
217 ContentType::Unsupported(unknown_type) => return Err(Error::from(serde_json::Error::custom(format!("Received `{unknown_type}` content type response that cannot be converted to `models::LogsPaginatedResponse`")))),
218 }
219 } else {
220 let content = resp.text().await?;
221 let entity: Option<LoggingControllerLogsQueryError> = serde_json::from_str(&content).ok();
222 Err(Error::ResponseError(ResponseContent {
223 status,
224 content,
225 entity,
226 }))
227 }
228}