Skip to main content

bitwarden_api_api/apis/
organization_invite_links_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 OrganizationInviteLinksApi: Send + Sync {
29    /// POST /organizations/{orgId}/invite-link
30    async fn create<'a>(
31        &self,
32        org_id: uuid::Uuid,
33        create_organization_invite_link_request_model: Option<
34            models::CreateOrganizationInviteLinkRequestModel,
35        >,
36    ) -> Result<models::OrganizationInviteLinkResponseModel, Error>;
37
38    /// DELETE /organizations/{orgId}/invite-link
39    async fn delete<'a>(&self, org_id: uuid::Uuid) -> Result<(), Error>;
40
41    /// GET /organizations/{orgId}/invite-link
42    async fn get<'a>(
43        &self,
44        org_id: uuid::Uuid,
45    ) -> Result<models::OrganizationInviteLinkResponseModel, Error>;
46
47    /// POST /organizations/invite-link/policies
48    async fn get_policies<'a>(
49        &self,
50        get_organization_invite_link_policies_request_model: Option<
51            models::GetOrganizationInviteLinkPoliciesRequestModel,
52        >,
53    ) -> Result<models::PolicyResponseModelListResponseModel, Error>;
54
55    /// POST /organizations/invite-link/status
56    async fn get_status<'a>(
57        &self,
58        get_organization_invite_link_status_request_model: Option<
59            models::GetOrganizationInviteLinkStatusRequestModel,
60        >,
61    ) -> Result<models::OrganizationInviteLinkStatusResponseModel, Error>;
62
63    /// POST /organizations/{orgId}/invite-link/refresh
64    async fn refresh<'a>(
65        &self,
66        org_id: uuid::Uuid,
67        refresh_organization_invite_link_request_model: Option<
68            models::RefreshOrganizationInviteLinkRequestModel,
69        >,
70    ) -> Result<models::OrganizationInviteLinkResponseModel, Error>;
71
72    /// PUT /organizations/{orgId}/invite-link
73    async fn update<'a>(
74        &self,
75        org_id: uuid::Uuid,
76        update_organization_invite_link_request_model: Option<
77            models::UpdateOrganizationInviteLinkRequestModel,
78        >,
79    ) -> Result<models::OrganizationInviteLinkResponseModel, Error>;
80
81    /// PUT /organizations/{orgId}/invite-link/support-confirm
82    async fn update_invite_support_confirm<'a>(
83        &self,
84        org_id: uuid::Uuid,
85        update_invite_support_confirm_request_model: Option<
86            models::UpdateInviteSupportConfirmRequestModel,
87        >,
88    ) -> Result<models::OrganizationInviteLinkResponseModel, Error>;
89
90    /// POST /organizations/invite-link/validate-email-domain
91    async fn validate_email_domain<'a>(
92        &self,
93        organization_invite_link_validate_email_domain_request_model: Option<
94            models::OrganizationInviteLinkValidateEmailDomainRequestModel,
95        >,
96    ) -> Result<models::OrganizationInviteLinkValidateEmailDomainResponseModel, Error>;
97}
98
99pub struct OrganizationInviteLinksApiClient {
100    configuration: Arc<configuration::Configuration>,
101}
102
103impl OrganizationInviteLinksApiClient {
104    pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
105        Self { configuration }
106    }
107}
108
109#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
110#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
111impl OrganizationInviteLinksApi for OrganizationInviteLinksApiClient {
112    async fn create<'a>(
113        &self,
114        org_id: uuid::Uuid,
115        create_organization_invite_link_request_model: Option<
116            models::CreateOrganizationInviteLinkRequestModel,
117        >,
118    ) -> Result<models::OrganizationInviteLinkResponseModel, Error> {
119        let local_var_configuration = &self.configuration;
120
121        let local_var_client = &local_var_configuration.client;
122
123        let local_var_uri_str = format!(
124            "{}/organizations/{orgId}/invite-link",
125            local_var_configuration.base_path,
126            orgId = org_id
127        );
128        let mut local_var_req_builder =
129            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
130
131        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
132        local_var_req_builder =
133            local_var_req_builder.json(&create_organization_invite_link_request_model);
134
135        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
136    }
137
138    async fn delete<'a>(&self, org_id: uuid::Uuid) -> Result<(), Error> {
139        let local_var_configuration = &self.configuration;
140
141        let local_var_client = &local_var_configuration.client;
142
143        let local_var_uri_str = format!(
144            "{}/organizations/{orgId}/invite-link",
145            local_var_configuration.base_path,
146            orgId = org_id
147        );
148        let mut local_var_req_builder =
149            local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
150
151        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
152
153        bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
154    }
155
156    async fn get<'a>(
157        &self,
158        org_id: uuid::Uuid,
159    ) -> Result<models::OrganizationInviteLinkResponseModel, Error> {
160        let local_var_configuration = &self.configuration;
161
162        let local_var_client = &local_var_configuration.client;
163
164        let local_var_uri_str = format!(
165            "{}/organizations/{orgId}/invite-link",
166            local_var_configuration.base_path,
167            orgId = org_id
168        );
169        let mut local_var_req_builder =
170            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
171
172        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
173
174        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
175    }
176
177    async fn get_policies<'a>(
178        &self,
179        get_organization_invite_link_policies_request_model: Option<
180            models::GetOrganizationInviteLinkPoliciesRequestModel,
181        >,
182    ) -> Result<models::PolicyResponseModelListResponseModel, Error> {
183        let local_var_configuration = &self.configuration;
184
185        let local_var_client = &local_var_configuration.client;
186
187        let local_var_uri_str = format!(
188            "{}/organizations/invite-link/policies",
189            local_var_configuration.base_path
190        );
191        let mut local_var_req_builder =
192            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
193
194        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
195        local_var_req_builder =
196            local_var_req_builder.json(&get_organization_invite_link_policies_request_model);
197
198        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
199    }
200
201    async fn get_status<'a>(
202        &self,
203        get_organization_invite_link_status_request_model: Option<
204            models::GetOrganizationInviteLinkStatusRequestModel,
205        >,
206    ) -> Result<models::OrganizationInviteLinkStatusResponseModel, Error> {
207        let local_var_configuration = &self.configuration;
208
209        let local_var_client = &local_var_configuration.client;
210
211        let local_var_uri_str = format!(
212            "{}/organizations/invite-link/status",
213            local_var_configuration.base_path
214        );
215        let mut local_var_req_builder =
216            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
217
218        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
219        local_var_req_builder =
220            local_var_req_builder.json(&get_organization_invite_link_status_request_model);
221
222        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
223    }
224
225    async fn refresh<'a>(
226        &self,
227        org_id: uuid::Uuid,
228        refresh_organization_invite_link_request_model: Option<
229            models::RefreshOrganizationInviteLinkRequestModel,
230        >,
231    ) -> Result<models::OrganizationInviteLinkResponseModel, Error> {
232        let local_var_configuration = &self.configuration;
233
234        let local_var_client = &local_var_configuration.client;
235
236        let local_var_uri_str = format!(
237            "{}/organizations/{orgId}/invite-link/refresh",
238            local_var_configuration.base_path,
239            orgId = org_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 =
246            local_var_req_builder.json(&refresh_organization_invite_link_request_model);
247
248        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
249    }
250
251    async fn update<'a>(
252        &self,
253        org_id: uuid::Uuid,
254        update_organization_invite_link_request_model: Option<
255            models::UpdateOrganizationInviteLinkRequestModel,
256        >,
257    ) -> Result<models::OrganizationInviteLinkResponseModel, Error> {
258        let local_var_configuration = &self.configuration;
259
260        let local_var_client = &local_var_configuration.client;
261
262        let local_var_uri_str = format!(
263            "{}/organizations/{orgId}/invite-link",
264            local_var_configuration.base_path,
265            orgId = org_id
266        );
267        let mut local_var_req_builder =
268            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
269
270        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
271        local_var_req_builder =
272            local_var_req_builder.json(&update_organization_invite_link_request_model);
273
274        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
275    }
276
277    async fn update_invite_support_confirm<'a>(
278        &self,
279        org_id: uuid::Uuid,
280        update_invite_support_confirm_request_model: Option<
281            models::UpdateInviteSupportConfirmRequestModel,
282        >,
283    ) -> Result<models::OrganizationInviteLinkResponseModel, Error> {
284        let local_var_configuration = &self.configuration;
285
286        let local_var_client = &local_var_configuration.client;
287
288        let local_var_uri_str = format!(
289            "{}/organizations/{orgId}/invite-link/support-confirm",
290            local_var_configuration.base_path,
291            orgId = org_id
292        );
293        let mut local_var_req_builder =
294            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
295
296        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
297        local_var_req_builder =
298            local_var_req_builder.json(&update_invite_support_confirm_request_model);
299
300        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
301    }
302
303    async fn validate_email_domain<'a>(
304        &self,
305        organization_invite_link_validate_email_domain_request_model: Option<
306            models::OrganizationInviteLinkValidateEmailDomainRequestModel,
307        >,
308    ) -> Result<models::OrganizationInviteLinkValidateEmailDomainResponseModel, Error> {
309        let local_var_configuration = &self.configuration;
310
311        let local_var_client = &local_var_configuration.client;
312
313        let local_var_uri_str = format!(
314            "{}/organizations/invite-link/validate-email-domain",
315            local_var_configuration.base_path
316        );
317        let mut local_var_req_builder =
318            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
319
320        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
321        local_var_req_builder = local_var_req_builder
322            .json(&organization_invite_link_validate_email_domain_request_model);
323
324        bitwarden_api_base::process_with_json_response(local_var_req_builder).await
325    }
326}