bitwarden_api_api/apis/
provider_organizations_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 [`providers_provider_id_organizations_add_post`]
18#[derive(Debug, Clone, Serialize, Deserialize)]
19#[serde(untagged)]
20pub enum ProvidersProviderIdOrganizationsAddPostError {
21    UnknownValue(serde_json::Value),
22}
23
24/// struct for typed errors of method [`providers_provider_id_organizations_get`]
25#[derive(Debug, Clone, Serialize, Deserialize)]
26#[serde(untagged)]
27pub enum ProvidersProviderIdOrganizationsGetError {
28    UnknownValue(serde_json::Value),
29}
30
31/// struct for typed errors of method [`providers_provider_id_organizations_id_delete`]
32#[derive(Debug, Clone, Serialize, Deserialize)]
33#[serde(untagged)]
34pub enum ProvidersProviderIdOrganizationsIdDeleteError {
35    UnknownValue(serde_json::Value),
36}
37
38/// struct for typed errors of method [`providers_provider_id_organizations_id_delete_post`]
39#[derive(Debug, Clone, Serialize, Deserialize)]
40#[serde(untagged)]
41pub enum ProvidersProviderIdOrganizationsIdDeletePostError {
42    UnknownValue(serde_json::Value),
43}
44
45/// struct for typed errors of method [`providers_provider_id_organizations_post`]
46#[derive(Debug, Clone, Serialize, Deserialize)]
47#[serde(untagged)]
48pub enum ProvidersProviderIdOrganizationsPostError {
49    UnknownValue(serde_json::Value),
50}
51
52pub async fn providers_provider_id_organizations_add_post(
53    configuration: &configuration::Configuration,
54    provider_id: uuid::Uuid,
55    provider_organization_add_request_model: Option<models::ProviderOrganizationAddRequestModel>,
56) -> Result<(), Error<ProvidersProviderIdOrganizationsAddPostError>> {
57    let local_var_configuration = configuration;
58
59    let local_var_client = &local_var_configuration.client;
60
61    let local_var_uri_str = format!(
62        "{}/providers/{providerId}/organizations/add",
63        local_var_configuration.base_path,
64        providerId = crate::apis::urlencode(provider_id.to_string())
65    );
66    let mut local_var_req_builder =
67        local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
68
69    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
70        local_var_req_builder =
71            local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
72    }
73    if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
74        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
75    };
76    local_var_req_builder = local_var_req_builder.json(&provider_organization_add_request_model);
77
78    let local_var_req = local_var_req_builder.build()?;
79    let local_var_resp = local_var_client.execute(local_var_req).await?;
80
81    let local_var_status = local_var_resp.status();
82    let local_var_content = local_var_resp.text().await?;
83
84    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
85        Ok(())
86    } else {
87        let local_var_entity: Option<ProvidersProviderIdOrganizationsAddPostError> =
88            serde_json::from_str(&local_var_content).ok();
89        let local_var_error = ResponseContent {
90            status: local_var_status,
91            content: local_var_content,
92            entity: local_var_entity,
93        };
94        Err(Error::ResponseError(local_var_error))
95    }
96}
97
98pub async fn providers_provider_id_organizations_get(
99    configuration: &configuration::Configuration,
100    provider_id: uuid::Uuid,
101) -> Result<
102    models::ProviderOrganizationOrganizationDetailsResponseModelListResponseModel,
103    Error<ProvidersProviderIdOrganizationsGetError>,
104> {
105    let local_var_configuration = configuration;
106
107    let local_var_client = &local_var_configuration.client;
108
109    let local_var_uri_str = format!(
110        "{}/providers/{providerId}/organizations",
111        local_var_configuration.base_path,
112        providerId = crate::apis::urlencode(provider_id.to_string())
113    );
114    let mut local_var_req_builder =
115        local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
116
117    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
118        local_var_req_builder =
119            local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
120    }
121    if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
122        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
123    };
124
125    let local_var_req = local_var_req_builder.build()?;
126    let local_var_resp = local_var_client.execute(local_var_req).await?;
127
128    let local_var_status = local_var_resp.status();
129    let local_var_content = local_var_resp.text().await?;
130
131    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
132        serde_json::from_str(&local_var_content).map_err(Error::from)
133    } else {
134        let local_var_entity: Option<ProvidersProviderIdOrganizationsGetError> =
135            serde_json::from_str(&local_var_content).ok();
136        let local_var_error = ResponseContent {
137            status: local_var_status,
138            content: local_var_content,
139            entity: local_var_entity,
140        };
141        Err(Error::ResponseError(local_var_error))
142    }
143}
144
145pub async fn providers_provider_id_organizations_id_delete(
146    configuration: &configuration::Configuration,
147    provider_id: uuid::Uuid,
148    id: uuid::Uuid,
149) -> Result<(), Error<ProvidersProviderIdOrganizationsIdDeleteError>> {
150    let local_var_configuration = configuration;
151
152    let local_var_client = &local_var_configuration.client;
153
154    let local_var_uri_str = format!(
155        "{}/providers/{providerId}/organizations/{id}",
156        local_var_configuration.base_path,
157        providerId = crate::apis::urlencode(provider_id.to_string()),
158        id = crate::apis::urlencode(id.to_string())
159    );
160    let mut local_var_req_builder =
161        local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
162
163    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
164        local_var_req_builder =
165            local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
166    }
167    if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
168        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
169    };
170
171    let local_var_req = local_var_req_builder.build()?;
172    let local_var_resp = local_var_client.execute(local_var_req).await?;
173
174    let local_var_status = local_var_resp.status();
175    let local_var_content = local_var_resp.text().await?;
176
177    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
178        Ok(())
179    } else {
180        let local_var_entity: Option<ProvidersProviderIdOrganizationsIdDeleteError> =
181            serde_json::from_str(&local_var_content).ok();
182        let local_var_error = ResponseContent {
183            status: local_var_status,
184            content: local_var_content,
185            entity: local_var_entity,
186        };
187        Err(Error::ResponseError(local_var_error))
188    }
189}
190
191pub async fn providers_provider_id_organizations_id_delete_post(
192    configuration: &configuration::Configuration,
193    provider_id: uuid::Uuid,
194    id: uuid::Uuid,
195) -> Result<(), Error<ProvidersProviderIdOrganizationsIdDeletePostError>> {
196    let local_var_configuration = configuration;
197
198    let local_var_client = &local_var_configuration.client;
199
200    let local_var_uri_str = format!(
201        "{}/providers/{providerId}/organizations/{id}/delete",
202        local_var_configuration.base_path,
203        providerId = crate::apis::urlencode(provider_id.to_string()),
204        id = crate::apis::urlencode(id.to_string())
205    );
206    let mut local_var_req_builder =
207        local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
208
209    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
210        local_var_req_builder =
211            local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
212    }
213    if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
214        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
215    };
216
217    let local_var_req = local_var_req_builder.build()?;
218    let local_var_resp = local_var_client.execute(local_var_req).await?;
219
220    let local_var_status = local_var_resp.status();
221    let local_var_content = local_var_resp.text().await?;
222
223    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
224        Ok(())
225    } else {
226        let local_var_entity: Option<ProvidersProviderIdOrganizationsIdDeletePostError> =
227            serde_json::from_str(&local_var_content).ok();
228        let local_var_error = ResponseContent {
229            status: local_var_status,
230            content: local_var_content,
231            entity: local_var_entity,
232        };
233        Err(Error::ResponseError(local_var_error))
234    }
235}
236
237pub async fn providers_provider_id_organizations_post(
238    configuration: &configuration::Configuration,
239    provider_id: uuid::Uuid,
240    provider_organization_create_request_model: Option<
241        models::ProviderOrganizationCreateRequestModel,
242    >,
243) -> Result<
244    models::ProviderOrganizationResponseModel,
245    Error<ProvidersProviderIdOrganizationsPostError>,
246> {
247    let local_var_configuration = configuration;
248
249    let local_var_client = &local_var_configuration.client;
250
251    let local_var_uri_str = format!(
252        "{}/providers/{providerId}/organizations",
253        local_var_configuration.base_path,
254        providerId = crate::apis::urlencode(provider_id.to_string())
255    );
256    let mut local_var_req_builder =
257        local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
258
259    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
260        local_var_req_builder =
261            local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
262    }
263    if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
264        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
265    };
266    local_var_req_builder = local_var_req_builder.json(&provider_organization_create_request_model);
267
268    let local_var_req = local_var_req_builder.build()?;
269    let local_var_resp = local_var_client.execute(local_var_req).await?;
270
271    let local_var_status = local_var_resp.status();
272    let local_var_content = local_var_resp.text().await?;
273
274    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
275        serde_json::from_str(&local_var_content).map_err(Error::from)
276    } else {
277        let local_var_entity: Option<ProvidersProviderIdOrganizationsPostError> =
278            serde_json::from_str(&local_var_content).ok();
279        let local_var_error = ResponseContent {
280            status: local_var_status,
281            content: local_var_content,
282            entity: local_var_entity,
283        };
284        Err(Error::ResponseError(local_var_error))
285    }
286}