Skip to main content

bitwarden_api_api/apis/
sends_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 std::sync::Arc;
12
13use async_trait::async_trait;
14#[cfg(feature = "mockall")]
15use mockall::automock;
16use reqwest;
17use serde::{Deserialize, Serialize, de::Error as _};
18
19use super::{Error, configuration};
20use crate::{
21    apis::{AuthRequired, ContentType, ResponseContent},
22    models,
23};
24
25#[cfg_attr(feature = "mockall", automock)]
26#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
27#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
28pub trait SendsApi: Send + Sync {
29    /// POST /sends/access/{id}
30    async fn access<'a>(
31        &self,
32        id: &'a str,
33        send_access_request_model: Option<models::SendAccessRequestModel>,
34    ) -> Result<models::SendAccessResponseModel, Error>;
35
36    /// POST /sends/access
37    async fn access_using_auth(&self) -> Result<models::SendAccessResponseModel, Error>;
38
39    /// POST /sends/file/validate/azure
40    async fn azure_validate_file(&self) -> Result<(), Error>;
41
42    /// DELETE /sends/{id}
43    async fn delete<'a>(&self, id: &'a str) -> Result<(), Error>;
44
45    /// GET /sends/{id}
46    async fn get<'a>(&self, id: &'a str) -> Result<models::SendResponseModel, Error>;
47
48    /// GET /sends
49    async fn get_all(&self) -> Result<models::SendResponseModelListResponseModel, Error>;
50
51    /// POST /sends/{encodedSendId}/access/file/{fileId}
52    async fn get_send_file_download_data<'a>(
53        &self,
54        encoded_send_id: &'a str,
55        file_id: &'a str,
56        send_access_request_model: Option<models::SendAccessRequestModel>,
57    ) -> Result<models::SendFileDownloadDataResponseModel, Error>;
58
59    /// POST /sends/access/file/{fileId}
60    async fn get_send_file_download_data_using_auth<'a>(
61        &self,
62        file_id: &'a str,
63    ) -> Result<models::SendFileDownloadDataResponseModel, Error>;
64
65    /// POST /sends
66    async fn post<'a>(
67        &self,
68        send_request_model: Option<models::SendRequestModel>,
69    ) -> Result<models::SendResponseModel, Error>;
70
71    /// POST /sends/file/v2
72    async fn post_file<'a>(
73        &self,
74        send_request_model: Option<models::SendRequestModel>,
75    ) -> Result<models::SendFileUploadDataResponseModel, Error>;
76
77    /// POST /sends/{id}/file/{fileId}
78    async fn post_file_for_existing_send<'a>(
79        &self,
80        id: &'a str,
81        file_id: &'a str,
82    ) -> Result<(), Error>;
83
84    /// PUT /sends/{id}
85    async fn put<'a>(
86        &self,
87        id: &'a str,
88        send_request_model: Option<models::SendRequestModel>,
89    ) -> Result<models::SendResponseModel, Error>;
90
91    /// PUT /sends/{id}/remove-auth
92    async fn put_remove_auth<'a>(&self, id: &'a str) -> Result<models::SendResponseModel, Error>;
93
94    /// PUT /sends/{id}/remove-password
95    async fn put_remove_password<'a>(
96        &self,
97        id: &'a str,
98    ) -> Result<models::SendResponseModel, Error>;
99
100    /// GET /sends/{id}/file/{fileId}
101    async fn renew_file_upload<'a>(
102        &self,
103        id: &'a str,
104        file_id: &'a str,
105    ) -> Result<models::SendFileUploadDataResponseModel, Error>;
106}
107
108pub struct SendsApiClient {
109    configuration: Arc<configuration::Configuration>,
110}
111
112impl SendsApiClient {
113    pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
114        Self { configuration }
115    }
116}
117
118#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
119#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
120impl SendsApi for SendsApiClient {
121    async fn access<'a>(
122        &self,
123        id: &'a str,
124        send_access_request_model: Option<models::SendAccessRequestModel>,
125    ) -> Result<models::SendAccessResponseModel, Error> {
126        let local_var_configuration = &self.configuration;
127
128        let local_var_client = &local_var_configuration.client;
129
130        let local_var_uri_str = format!(
131            "{}/sends/access/{id}",
132            local_var_configuration.base_path,
133            id = crate::apis::urlencode(id)
134        );
135        let mut local_var_req_builder =
136            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
137
138        local_var_req_builder = local_var_req_builder.json(&send_access_request_model);
139
140        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
141    }
142
143    async fn access_using_auth(&self) -> Result<models::SendAccessResponseModel, Error> {
144        let local_var_configuration = &self.configuration;
145
146        let local_var_client = &local_var_configuration.client;
147
148        let local_var_uri_str = format!("{}/sends/access", local_var_configuration.base_path);
149        let mut local_var_req_builder =
150            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
151
152        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
153
154        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
155    }
156
157    async fn azure_validate_file(&self) -> Result<(), Error> {
158        let local_var_configuration = &self.configuration;
159
160        let local_var_client = &local_var_configuration.client;
161
162        let local_var_uri_str = format!(
163            "{}/sends/file/validate/azure",
164            local_var_configuration.base_path
165        );
166        let mut local_var_req_builder =
167            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
168
169        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
170    }
171
172    async fn delete<'a>(&self, id: &'a str) -> Result<(), Error> {
173        let local_var_configuration = &self.configuration;
174
175        let local_var_client = &local_var_configuration.client;
176
177        let local_var_uri_str = format!(
178            "{}/sends/{id}",
179            local_var_configuration.base_path,
180            id = crate::apis::urlencode(id)
181        );
182        let mut local_var_req_builder =
183            local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
184
185        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
186
187        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
188    }
189
190    async fn get<'a>(&self, id: &'a str) -> Result<models::SendResponseModel, Error> {
191        let local_var_configuration = &self.configuration;
192
193        let local_var_client = &local_var_configuration.client;
194
195        let local_var_uri_str = format!(
196            "{}/sends/{id}",
197            local_var_configuration.base_path,
198            id = crate::apis::urlencode(id)
199        );
200        let mut local_var_req_builder =
201            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
202
203        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
204
205        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
206    }
207
208    async fn get_all(&self) -> Result<models::SendResponseModelListResponseModel, Error> {
209        let local_var_configuration = &self.configuration;
210
211        let local_var_client = &local_var_configuration.client;
212
213        let local_var_uri_str = format!("{}/sends", local_var_configuration.base_path);
214        let mut local_var_req_builder =
215            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
216
217        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
218
219        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
220    }
221
222    async fn get_send_file_download_data<'a>(
223        &self,
224        encoded_send_id: &'a str,
225        file_id: &'a str,
226        send_access_request_model: Option<models::SendAccessRequestModel>,
227    ) -> Result<models::SendFileDownloadDataResponseModel, Error> {
228        let local_var_configuration = &self.configuration;
229
230        let local_var_client = &local_var_configuration.client;
231
232        let local_var_uri_str = format!(
233            "{}/sends/{encodedSendId}/access/file/{fileId}",
234            local_var_configuration.base_path,
235            encodedSendId = crate::apis::urlencode(encoded_send_id),
236            fileId = crate::apis::urlencode(file_id)
237        );
238        let mut local_var_req_builder =
239            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
240
241        local_var_req_builder = local_var_req_builder.json(&send_access_request_model);
242
243        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
244    }
245
246    async fn get_send_file_download_data_using_auth<'a>(
247        &self,
248        file_id: &'a str,
249    ) -> Result<models::SendFileDownloadDataResponseModel, Error> {
250        let local_var_configuration = &self.configuration;
251
252        let local_var_client = &local_var_configuration.client;
253
254        let local_var_uri_str = format!(
255            "{}/sends/access/file/{fileId}",
256            local_var_configuration.base_path,
257            fileId = crate::apis::urlencode(file_id)
258        );
259        let mut local_var_req_builder =
260            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
261
262        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
263
264        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
265    }
266
267    async fn post<'a>(
268        &self,
269        send_request_model: Option<models::SendRequestModel>,
270    ) -> Result<models::SendResponseModel, Error> {
271        let local_var_configuration = &self.configuration;
272
273        let local_var_client = &local_var_configuration.client;
274
275        let local_var_uri_str = format!("{}/sends", local_var_configuration.base_path);
276        let mut local_var_req_builder =
277            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
278
279        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
280        local_var_req_builder = local_var_req_builder.json(&send_request_model);
281
282        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
283    }
284
285    async fn post_file<'a>(
286        &self,
287        send_request_model: Option<models::SendRequestModel>,
288    ) -> Result<models::SendFileUploadDataResponseModel, Error> {
289        let local_var_configuration = &self.configuration;
290
291        let local_var_client = &local_var_configuration.client;
292
293        let local_var_uri_str = format!("{}/sends/file/v2", local_var_configuration.base_path);
294        let mut local_var_req_builder =
295            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
296
297        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
298        local_var_req_builder = local_var_req_builder.json(&send_request_model);
299
300        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
301    }
302
303    async fn post_file_for_existing_send<'a>(
304        &self,
305        id: &'a str,
306        file_id: &'a str,
307    ) -> Result<(), Error> {
308        let local_var_configuration = &self.configuration;
309
310        let local_var_client = &local_var_configuration.client;
311
312        let local_var_uri_str = format!(
313            "{}/sends/{id}/file/{fileId}",
314            local_var_configuration.base_path,
315            id = crate::apis::urlencode(id),
316            fileId = crate::apis::urlencode(file_id)
317        );
318        let mut local_var_req_builder =
319            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
320
321        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
322
323        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
324    }
325
326    async fn put<'a>(
327        &self,
328        id: &'a str,
329        send_request_model: Option<models::SendRequestModel>,
330    ) -> Result<models::SendResponseModel, Error> {
331        let local_var_configuration = &self.configuration;
332
333        let local_var_client = &local_var_configuration.client;
334
335        let local_var_uri_str = format!(
336            "{}/sends/{id}",
337            local_var_configuration.base_path,
338            id = crate::apis::urlencode(id)
339        );
340        let mut local_var_req_builder =
341            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
342
343        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
344        local_var_req_builder = local_var_req_builder.json(&send_request_model);
345
346        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
347    }
348
349    async fn put_remove_auth<'a>(&self, id: &'a str) -> Result<models::SendResponseModel, Error> {
350        let local_var_configuration = &self.configuration;
351
352        let local_var_client = &local_var_configuration.client;
353
354        let local_var_uri_str = format!(
355            "{}/sends/{id}/remove-auth",
356            local_var_configuration.base_path,
357            id = crate::apis::urlencode(id)
358        );
359        let mut local_var_req_builder =
360            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
361
362        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
363
364        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
365    }
366
367    async fn put_remove_password<'a>(
368        &self,
369        id: &'a str,
370    ) -> Result<models::SendResponseModel, Error> {
371        let local_var_configuration = &self.configuration;
372
373        let local_var_client = &local_var_configuration.client;
374
375        let local_var_uri_str = format!(
376            "{}/sends/{id}/remove-password",
377            local_var_configuration.base_path,
378            id = crate::apis::urlencode(id)
379        );
380        let mut local_var_req_builder =
381            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
382
383        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
384
385        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
386    }
387
388    async fn renew_file_upload<'a>(
389        &self,
390        id: &'a str,
391        file_id: &'a str,
392    ) -> Result<models::SendFileUploadDataResponseModel, Error> {
393        let local_var_configuration = &self.configuration;
394
395        let local_var_client = &local_var_configuration.client;
396
397        let local_var_uri_str = format!(
398            "{}/sends/{id}/file/{fileId}",
399            local_var_configuration.base_path,
400            id = crate::apis::urlencode(id),
401            fileId = crate::apis::urlencode(file_id)
402        );
403        let mut local_var_req_builder =
404            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
405
406        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
407
408        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
409    }
410}