1use reqwest;
12use serde::{Deserialize, Serialize};
13
14use super::{configuration, Error};
15use crate::{apis::ResponseContent, models};
16
17#[derive(Debug, Clone, Serialize, Deserialize)]
19#[serde(untagged)]
20pub enum FoldersAllDeleteError {
21 UnknownValue(serde_json::Value),
22}
23
24#[derive(Debug, Clone, Serialize, Deserialize)]
26#[serde(untagged)]
27pub enum FoldersGetError {
28 UnknownValue(serde_json::Value),
29}
30
31#[derive(Debug, Clone, Serialize, Deserialize)]
33#[serde(untagged)]
34pub enum FoldersIdDeleteError {
35 UnknownValue(serde_json::Value),
36}
37
38#[derive(Debug, Clone, Serialize, Deserialize)]
40#[serde(untagged)]
41pub enum FoldersIdDeletePostError {
42 UnknownValue(serde_json::Value),
43}
44
45#[derive(Debug, Clone, Serialize, Deserialize)]
47#[serde(untagged)]
48pub enum FoldersIdGetError {
49 UnknownValue(serde_json::Value),
50}
51
52#[derive(Debug, Clone, Serialize, Deserialize)]
54#[serde(untagged)]
55pub enum FoldersIdPostError {
56 UnknownValue(serde_json::Value),
57}
58
59#[derive(Debug, Clone, Serialize, Deserialize)]
61#[serde(untagged)]
62pub enum FoldersIdPutError {
63 UnknownValue(serde_json::Value),
64}
65
66#[derive(Debug, Clone, Serialize, Deserialize)]
68#[serde(untagged)]
69pub enum FoldersPostError {
70 UnknownValue(serde_json::Value),
71}
72
73pub async fn folders_all_delete(
74 configuration: &configuration::Configuration,
75) -> Result<(), Error<FoldersAllDeleteError>> {
76 let local_var_configuration = configuration;
77
78 let local_var_client = &local_var_configuration.client;
79
80 let local_var_uri_str = format!("{}/folders/all", local_var_configuration.base_path);
81 let mut local_var_req_builder =
82 local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
83
84 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
85 local_var_req_builder =
86 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
87 }
88 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
89 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
90 };
91
92 let local_var_req = local_var_req_builder.build()?;
93 let local_var_resp = local_var_client.execute(local_var_req).await?;
94
95 let local_var_status = local_var_resp.status();
96 let local_var_content = local_var_resp.text().await?;
97
98 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
99 Ok(())
100 } else {
101 let local_var_entity: Option<FoldersAllDeleteError> =
102 serde_json::from_str(&local_var_content).ok();
103 let local_var_error = ResponseContent {
104 status: local_var_status,
105 content: local_var_content,
106 entity: local_var_entity,
107 };
108 Err(Error::ResponseError(local_var_error))
109 }
110}
111
112pub async fn folders_get(
113 configuration: &configuration::Configuration,
114) -> Result<models::FolderResponseModelListResponseModel, Error<FoldersGetError>> {
115 let local_var_configuration = configuration;
116
117 let local_var_client = &local_var_configuration.client;
118
119 let local_var_uri_str = format!("{}/folders", local_var_configuration.base_path);
120 let mut local_var_req_builder =
121 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
122
123 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
124 local_var_req_builder =
125 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
126 }
127 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
128 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
129 };
130
131 let local_var_req = local_var_req_builder.build()?;
132 let local_var_resp = local_var_client.execute(local_var_req).await?;
133
134 let local_var_status = local_var_resp.status();
135 let local_var_content = local_var_resp.text().await?;
136
137 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
138 serde_json::from_str(&local_var_content).map_err(Error::from)
139 } else {
140 let local_var_entity: Option<FoldersGetError> =
141 serde_json::from_str(&local_var_content).ok();
142 let local_var_error = ResponseContent {
143 status: local_var_status,
144 content: local_var_content,
145 entity: local_var_entity,
146 };
147 Err(Error::ResponseError(local_var_error))
148 }
149}
150
151pub async fn folders_id_delete(
152 configuration: &configuration::Configuration,
153 id: &str,
154) -> Result<(), Error<FoldersIdDeleteError>> {
155 let local_var_configuration = configuration;
156
157 let local_var_client = &local_var_configuration.client;
158
159 let local_var_uri_str = format!(
160 "{}/folders/{id}",
161 local_var_configuration.base_path,
162 id = crate::apis::urlencode(id)
163 );
164 let mut local_var_req_builder =
165 local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
166
167 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
168 local_var_req_builder =
169 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
170 }
171 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
172 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
173 };
174
175 let local_var_req = local_var_req_builder.build()?;
176 let local_var_resp = local_var_client.execute(local_var_req).await?;
177
178 let local_var_status = local_var_resp.status();
179 let local_var_content = local_var_resp.text().await?;
180
181 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
182 Ok(())
183 } else {
184 let local_var_entity: Option<FoldersIdDeleteError> =
185 serde_json::from_str(&local_var_content).ok();
186 let local_var_error = ResponseContent {
187 status: local_var_status,
188 content: local_var_content,
189 entity: local_var_entity,
190 };
191 Err(Error::ResponseError(local_var_error))
192 }
193}
194
195pub async fn folders_id_delete_post(
196 configuration: &configuration::Configuration,
197 id: &str,
198) -> Result<(), Error<FoldersIdDeletePostError>> {
199 let local_var_configuration = configuration;
200
201 let local_var_client = &local_var_configuration.client;
202
203 let local_var_uri_str = format!(
204 "{}/folders/{id}/delete",
205 local_var_configuration.base_path,
206 id = crate::apis::urlencode(id)
207 );
208 let mut local_var_req_builder =
209 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
210
211 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
212 local_var_req_builder =
213 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
214 }
215 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
216 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
217 };
218
219 let local_var_req = local_var_req_builder.build()?;
220 let local_var_resp = local_var_client.execute(local_var_req).await?;
221
222 let local_var_status = local_var_resp.status();
223 let local_var_content = local_var_resp.text().await?;
224
225 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
226 Ok(())
227 } else {
228 let local_var_entity: Option<FoldersIdDeletePostError> =
229 serde_json::from_str(&local_var_content).ok();
230 let local_var_error = ResponseContent {
231 status: local_var_status,
232 content: local_var_content,
233 entity: local_var_entity,
234 };
235 Err(Error::ResponseError(local_var_error))
236 }
237}
238
239pub async fn folders_id_get(
240 configuration: &configuration::Configuration,
241 id: &str,
242) -> Result<models::FolderResponseModel, Error<FoldersIdGetError>> {
243 let local_var_configuration = configuration;
244
245 let local_var_client = &local_var_configuration.client;
246
247 let local_var_uri_str = format!(
248 "{}/folders/{id}",
249 local_var_configuration.base_path,
250 id = crate::apis::urlencode(id)
251 );
252 let mut local_var_req_builder =
253 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
254
255 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
256 local_var_req_builder =
257 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
258 }
259 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
260 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
261 };
262
263 let local_var_req = local_var_req_builder.build()?;
264 let local_var_resp = local_var_client.execute(local_var_req).await?;
265
266 let local_var_status = local_var_resp.status();
267 let local_var_content = local_var_resp.text().await?;
268
269 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
270 serde_json::from_str(&local_var_content).map_err(Error::from)
271 } else {
272 let local_var_entity: Option<FoldersIdGetError> =
273 serde_json::from_str(&local_var_content).ok();
274 let local_var_error = ResponseContent {
275 status: local_var_status,
276 content: local_var_content,
277 entity: local_var_entity,
278 };
279 Err(Error::ResponseError(local_var_error))
280 }
281}
282
283pub async fn folders_id_post(
284 configuration: &configuration::Configuration,
285 id: &str,
286 folder_request_model: Option<models::FolderRequestModel>,
287) -> Result<models::FolderResponseModel, Error<FoldersIdPostError>> {
288 let local_var_configuration = configuration;
289
290 let local_var_client = &local_var_configuration.client;
291
292 let local_var_uri_str = format!(
293 "{}/folders/{id}",
294 local_var_configuration.base_path,
295 id = crate::apis::urlencode(id)
296 );
297 let mut local_var_req_builder =
298 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
299
300 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
301 local_var_req_builder =
302 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
303 }
304 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
305 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
306 };
307 local_var_req_builder = local_var_req_builder.json(&folder_request_model);
308
309 let local_var_req = local_var_req_builder.build()?;
310 let local_var_resp = local_var_client.execute(local_var_req).await?;
311
312 let local_var_status = local_var_resp.status();
313 let local_var_content = local_var_resp.text().await?;
314
315 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
316 serde_json::from_str(&local_var_content).map_err(Error::from)
317 } else {
318 let local_var_entity: Option<FoldersIdPostError> =
319 serde_json::from_str(&local_var_content).ok();
320 let local_var_error = ResponseContent {
321 status: local_var_status,
322 content: local_var_content,
323 entity: local_var_entity,
324 };
325 Err(Error::ResponseError(local_var_error))
326 }
327}
328
329pub async fn folders_id_put(
330 configuration: &configuration::Configuration,
331 id: &str,
332 folder_request_model: Option<models::FolderRequestModel>,
333) -> Result<models::FolderResponseModel, Error<FoldersIdPutError>> {
334 let local_var_configuration = configuration;
335
336 let local_var_client = &local_var_configuration.client;
337
338 let local_var_uri_str = format!(
339 "{}/folders/{id}",
340 local_var_configuration.base_path,
341 id = crate::apis::urlencode(id)
342 );
343 let mut local_var_req_builder =
344 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
345
346 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
347 local_var_req_builder =
348 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
349 }
350 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
351 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
352 };
353 local_var_req_builder = local_var_req_builder.json(&folder_request_model);
354
355 let local_var_req = local_var_req_builder.build()?;
356 let local_var_resp = local_var_client.execute(local_var_req).await?;
357
358 let local_var_status = local_var_resp.status();
359 let local_var_content = local_var_resp.text().await?;
360
361 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
362 serde_json::from_str(&local_var_content).map_err(Error::from)
363 } else {
364 let local_var_entity: Option<FoldersIdPutError> =
365 serde_json::from_str(&local_var_content).ok();
366 let local_var_error = ResponseContent {
367 status: local_var_status,
368 content: local_var_content,
369 entity: local_var_entity,
370 };
371 Err(Error::ResponseError(local_var_error))
372 }
373}
374
375pub async fn folders_post(
376 configuration: &configuration::Configuration,
377 folder_request_model: Option<models::FolderRequestModel>,
378) -> Result<models::FolderResponseModel, Error<FoldersPostError>> {
379 let local_var_configuration = configuration;
380
381 let local_var_client = &local_var_configuration.client;
382
383 let local_var_uri_str = format!("{}/folders", local_var_configuration.base_path);
384 let mut local_var_req_builder =
385 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
386
387 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
388 local_var_req_builder =
389 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
390 }
391 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
392 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
393 };
394 local_var_req_builder = local_var_req_builder.json(&folder_request_model);
395
396 let local_var_req = local_var_req_builder.build()?;
397 let local_var_resp = local_var_client.execute(local_var_req).await?;
398
399 let local_var_status = local_var_resp.status();
400 let local_var_content = local_var_resp.text().await?;
401
402 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
403 serde_json::from_str(&local_var_content).map_err(Error::from)
404 } else {
405 let local_var_entity: Option<FoldersPostError> =
406 serde_json::from_str(&local_var_content).ok();
407 let local_var_error = ResponseContent {
408 status: local_var_status,
409 content: local_var_content,
410 entity: local_var_entity,
411 };
412 Err(Error::ResponseError(local_var_error))
413 }
414}