bitwarden_api_api/apis/
folders_api.rs

1/*
2 * Bitwarden Internal API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: latest
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use reqwest;
12use serde::{Deserialize, Serialize};
13
14use super::{configuration, Error};
15use crate::{apis::ResponseContent, models};
16
17/// struct for typed errors of method [`folders_all_delete`]
18#[derive(Debug, Clone, Serialize, Deserialize)]
19#[serde(untagged)]
20pub enum FoldersAllDeleteError {
21    UnknownValue(serde_json::Value),
22}
23
24/// struct for typed errors of method [`folders_get`]
25#[derive(Debug, Clone, Serialize, Deserialize)]
26#[serde(untagged)]
27pub enum FoldersGetError {
28    UnknownValue(serde_json::Value),
29}
30
31/// struct for typed errors of method [`folders_id_delete`]
32#[derive(Debug, Clone, Serialize, Deserialize)]
33#[serde(untagged)]
34pub enum FoldersIdDeleteError {
35    UnknownValue(serde_json::Value),
36}
37
38/// struct for typed errors of method [`folders_id_delete_post`]
39#[derive(Debug, Clone, Serialize, Deserialize)]
40#[serde(untagged)]
41pub enum FoldersIdDeletePostError {
42    UnknownValue(serde_json::Value),
43}
44
45/// struct for typed errors of method [`folders_id_get`]
46#[derive(Debug, Clone, Serialize, Deserialize)]
47#[serde(untagged)]
48pub enum FoldersIdGetError {
49    UnknownValue(serde_json::Value),
50}
51
52/// struct for typed errors of method [`folders_id_post`]
53#[derive(Debug, Clone, Serialize, Deserialize)]
54#[serde(untagged)]
55pub enum FoldersIdPostError {
56    UnknownValue(serde_json::Value),
57}
58
59/// struct for typed errors of method [`folders_id_put`]
60#[derive(Debug, Clone, Serialize, Deserialize)]
61#[serde(untagged)]
62pub enum FoldersIdPutError {
63    UnknownValue(serde_json::Value),
64}
65
66/// struct for typed errors of method [`folders_post`]
67#[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}