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<(), Error>;
35
36    /// POST /sends/access
37    async fn access_using_auth(&self) -> Result<(), 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<(), 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<(), 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<(), 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.with_extension(AuthRequired::Bearer);
139        local_var_req_builder = local_var_req_builder.json(&send_access_request_model);
140
141        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
142    }
143
144    async fn access_using_auth(&self) -> Result<(), Error> {
145        let local_var_configuration = &self.configuration;
146
147        let local_var_client = &local_var_configuration.client;
148
149        let local_var_uri_str = format!("{}/sends/access", local_var_configuration.base_path);
150        let mut local_var_req_builder =
151            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
152
153        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
154
155        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
156    }
157
158    async fn azure_validate_file(&self) -> Result<(), Error> {
159        let local_var_configuration = &self.configuration;
160
161        let local_var_client = &local_var_configuration.client;
162
163        let local_var_uri_str = format!(
164            "{}/sends/file/validate/azure",
165            local_var_configuration.base_path
166        );
167        let mut local_var_req_builder =
168            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
169
170        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
171
172        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
173    }
174
175    async fn delete<'a>(&self, id: &'a str) -> Result<(), Error> {
176        let local_var_configuration = &self.configuration;
177
178        let local_var_client = &local_var_configuration.client;
179
180        let local_var_uri_str = format!(
181            "{}/sends/{id}",
182            local_var_configuration.base_path,
183            id = crate::apis::urlencode(id)
184        );
185        let mut local_var_req_builder =
186            local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
187
188        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
189
190        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
191    }
192
193    async fn get<'a>(&self, id: &'a str) -> Result<models::SendResponseModel, Error> {
194        let local_var_configuration = &self.configuration;
195
196        let local_var_client = &local_var_configuration.client;
197
198        let local_var_uri_str = format!(
199            "{}/sends/{id}",
200            local_var_configuration.base_path,
201            id = crate::apis::urlencode(id)
202        );
203        let mut local_var_req_builder =
204            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
205
206        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
207
208        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
209    }
210
211    async fn get_all(&self) -> Result<models::SendResponseModelListResponseModel, Error> {
212        let local_var_configuration = &self.configuration;
213
214        let local_var_client = &local_var_configuration.client;
215
216        let local_var_uri_str = format!("{}/sends", local_var_configuration.base_path);
217        let mut local_var_req_builder =
218            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
219
220        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
221
222        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
223    }
224
225    async fn get_send_file_download_data<'a>(
226        &self,
227        encoded_send_id: &'a str,
228        file_id: &'a str,
229        send_access_request_model: Option<models::SendAccessRequestModel>,
230    ) -> Result<(), Error> {
231        let local_var_configuration = &self.configuration;
232
233        let local_var_client = &local_var_configuration.client;
234
235        let local_var_uri_str = format!(
236            "{}/sends/{encodedSendId}/access/file/{fileId}",
237            local_var_configuration.base_path,
238            encodedSendId = crate::apis::urlencode(encoded_send_id),
239            fileId = crate::apis::urlencode(file_id)
240        );
241        let mut local_var_req_builder =
242            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
243
244        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
245        local_var_req_builder = local_var_req_builder.json(&send_access_request_model);
246
247        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
248    }
249
250    async fn get_send_file_download_data_using_auth<'a>(
251        &self,
252        file_id: &'a str,
253    ) -> Result<(), Error> {
254        let local_var_configuration = &self.configuration;
255
256        let local_var_client = &local_var_configuration.client;
257
258        let local_var_uri_str = format!(
259            "{}/sends/access/file/{fileId}",
260            local_var_configuration.base_path,
261            fileId = crate::apis::urlencode(file_id)
262        );
263        let mut local_var_req_builder =
264            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
265
266        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
267
268        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
269    }
270
271    async fn post<'a>(
272        &self,
273        send_request_model: Option<models::SendRequestModel>,
274    ) -> Result<models::SendResponseModel, Error> {
275        let local_var_configuration = &self.configuration;
276
277        let local_var_client = &local_var_configuration.client;
278
279        let local_var_uri_str = format!("{}/sends", local_var_configuration.base_path);
280        let mut local_var_req_builder =
281            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
282
283        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
284        local_var_req_builder = local_var_req_builder.json(&send_request_model);
285
286        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
287    }
288
289    async fn post_file<'a>(
290        &self,
291        send_request_model: Option<models::SendRequestModel>,
292    ) -> Result<models::SendFileUploadDataResponseModel, Error> {
293        let local_var_configuration = &self.configuration;
294
295        let local_var_client = &local_var_configuration.client;
296
297        let local_var_uri_str = format!("{}/sends/file/v2", local_var_configuration.base_path);
298        let mut local_var_req_builder =
299            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
300
301        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
302        local_var_req_builder = local_var_req_builder.json(&send_request_model);
303
304        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
305    }
306
307    async fn post_file_for_existing_send<'a>(
308        &self,
309        id: &'a str,
310        file_id: &'a str,
311    ) -> Result<(), Error> {
312        let local_var_configuration = &self.configuration;
313
314        let local_var_client = &local_var_configuration.client;
315
316        let local_var_uri_str = format!(
317            "{}/sends/{id}/file/{fileId}",
318            local_var_configuration.base_path,
319            id = crate::apis::urlencode(id),
320            fileId = crate::apis::urlencode(file_id)
321        );
322        let mut local_var_req_builder =
323            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
324
325        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
326
327        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
328    }
329
330    async fn put<'a>(
331        &self,
332        id: &'a str,
333        send_request_model: Option<models::SendRequestModel>,
334    ) -> Result<models::SendResponseModel, Error> {
335        let local_var_configuration = &self.configuration;
336
337        let local_var_client = &local_var_configuration.client;
338
339        let local_var_uri_str = format!(
340            "{}/sends/{id}",
341            local_var_configuration.base_path,
342            id = crate::apis::urlencode(id)
343        );
344        let mut local_var_req_builder =
345            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
346
347        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
348        local_var_req_builder = local_var_req_builder.json(&send_request_model);
349
350        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
351    }
352
353    async fn put_remove_auth<'a>(&self, id: &'a str) -> Result<models::SendResponseModel, Error> {
354        let local_var_configuration = &self.configuration;
355
356        let local_var_client = &local_var_configuration.client;
357
358        let local_var_uri_str = format!(
359            "{}/sends/{id}/remove-auth",
360            local_var_configuration.base_path,
361            id = crate::apis::urlencode(id)
362        );
363        let mut local_var_req_builder =
364            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
365
366        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
367
368        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
369    }
370
371    async fn put_remove_password<'a>(
372        &self,
373        id: &'a str,
374    ) -> Result<models::SendResponseModel, Error> {
375        let local_var_configuration = &self.configuration;
376
377        let local_var_client = &local_var_configuration.client;
378
379        let local_var_uri_str = format!(
380            "{}/sends/{id}/remove-password",
381            local_var_configuration.base_path,
382            id = crate::apis::urlencode(id)
383        );
384        let mut local_var_req_builder =
385            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
386
387        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
388
389        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
390    }
391
392    async fn renew_file_upload<'a>(
393        &self,
394        id: &'a str,
395        file_id: &'a str,
396    ) -> Result<models::SendFileUploadDataResponseModel, Error> {
397        let local_var_configuration = &self.configuration;
398
399        let local_var_client = &local_var_configuration.client;
400
401        let local_var_uri_str = format!(
402            "{}/sends/{id}/file/{fileId}",
403            local_var_configuration.base_path,
404            id = crate::apis::urlencode(id),
405            fileId = crate::apis::urlencode(file_id)
406        );
407        let mut local_var_req_builder =
408            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
409
410        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
411
412        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
413    }
414}