bitwarden_api_api/apis/
organization_invite_links_api.rs1use 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 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<(), Error>;
37
38 async fn delete<'a>(&self, org_id: uuid::Uuid) -> Result<(), Error>;
40
41 async fn get<'a>(&self, org_id: uuid::Uuid) -> Result<(), Error>;
43
44 async fn get_status<'a>(
46 &self,
47 get_organization_invite_link_status_request_model: Option<
48 models::GetOrganizationInviteLinkStatusRequestModel,
49 >,
50 ) -> Result<(), Error>;
51
52 async fn refresh<'a>(
54 &self,
55 org_id: uuid::Uuid,
56 refresh_organization_invite_link_request_model: Option<
57 models::RefreshOrganizationInviteLinkRequestModel,
58 >,
59 ) -> Result<(), Error>;
60
61 async fn update<'a>(
63 &self,
64 org_id: uuid::Uuid,
65 update_organization_invite_link_request_model: Option<
66 models::UpdateOrganizationInviteLinkRequestModel,
67 >,
68 ) -> Result<(), Error>;
69}
70
71pub struct OrganizationInviteLinksApiClient {
72 configuration: Arc<configuration::Configuration>,
73}
74
75impl OrganizationInviteLinksApiClient {
76 pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
77 Self { configuration }
78 }
79}
80
81#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
82#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
83impl OrganizationInviteLinksApi for OrganizationInviteLinksApiClient {
84 async fn create<'a>(
85 &self,
86 org_id: uuid::Uuid,
87 create_organization_invite_link_request_model: Option<
88 models::CreateOrganizationInviteLinkRequestModel,
89 >,
90 ) -> Result<(), Error> {
91 let local_var_configuration = &self.configuration;
92
93 let local_var_client = &local_var_configuration.client;
94
95 let local_var_uri_str = format!(
96 "{}/organizations/{orgId}/invite-link",
97 local_var_configuration.base_path,
98 orgId = org_id
99 );
100 let mut local_var_req_builder =
101 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
102
103 local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
104 local_var_req_builder =
105 local_var_req_builder.json(&create_organization_invite_link_request_model);
106
107 bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
108 }
109
110 async fn delete<'a>(&self, org_id: uuid::Uuid) -> Result<(), Error> {
111 let local_var_configuration = &self.configuration;
112
113 let local_var_client = &local_var_configuration.client;
114
115 let local_var_uri_str = format!(
116 "{}/organizations/{orgId}/invite-link",
117 local_var_configuration.base_path,
118 orgId = org_id
119 );
120 let mut local_var_req_builder =
121 local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
122
123 local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
124
125 bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
126 }
127
128 async fn get<'a>(&self, org_id: uuid::Uuid) -> Result<(), Error> {
129 let local_var_configuration = &self.configuration;
130
131 let local_var_client = &local_var_configuration.client;
132
133 let local_var_uri_str = format!(
134 "{}/organizations/{orgId}/invite-link",
135 local_var_configuration.base_path,
136 orgId = org_id
137 );
138 let mut local_var_req_builder =
139 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
140
141 local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
142
143 bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
144 }
145
146 async fn get_status<'a>(
147 &self,
148 get_organization_invite_link_status_request_model: Option<
149 models::GetOrganizationInviteLinkStatusRequestModel,
150 >,
151 ) -> Result<(), Error> {
152 let local_var_configuration = &self.configuration;
153
154 let local_var_client = &local_var_configuration.client;
155
156 let local_var_uri_str = format!(
157 "{}/organizations/invite-link/status",
158 local_var_configuration.base_path
159 );
160 let mut local_var_req_builder =
161 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
162
163 local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
164 local_var_req_builder =
165 local_var_req_builder.json(&get_organization_invite_link_status_request_model);
166
167 bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
168 }
169
170 async fn refresh<'a>(
171 &self,
172 org_id: uuid::Uuid,
173 refresh_organization_invite_link_request_model: Option<
174 models::RefreshOrganizationInviteLinkRequestModel,
175 >,
176 ) -> Result<(), Error> {
177 let local_var_configuration = &self.configuration;
178
179 let local_var_client = &local_var_configuration.client;
180
181 let local_var_uri_str = format!(
182 "{}/organizations/{orgId}/invite-link/refresh",
183 local_var_configuration.base_path,
184 orgId = org_id
185 );
186 let mut local_var_req_builder =
187 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
188
189 local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
190 local_var_req_builder =
191 local_var_req_builder.json(&refresh_organization_invite_link_request_model);
192
193 bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
194 }
195
196 async fn update<'a>(
197 &self,
198 org_id: uuid::Uuid,
199 update_organization_invite_link_request_model: Option<
200 models::UpdateOrganizationInviteLinkRequestModel,
201 >,
202 ) -> Result<(), Error> {
203 let local_var_configuration = &self.configuration;
204
205 let local_var_client = &local_var_configuration.client;
206
207 let local_var_uri_str = format!(
208 "{}/organizations/{orgId}/invite-link",
209 local_var_configuration.base_path,
210 orgId = org_id
211 );
212 let mut local_var_req_builder =
213 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
214
215 local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
216 local_var_req_builder =
217 local_var_req_builder.json(&update_organization_invite_link_request_model);
218
219 bitwarden_api_base::process_with_empty_response(local_var_req_builder).await
220 }
221}