clerk_sdk_rust_community/apis/
instance_settings_api.rs1use reqwest;
13
14use crate::apis::ResponseContent;
15use super::{Error, configuration};
16
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum UpdateInstanceError {
22 Status422(crate::models::ClerkErrors),
23 UnknownValue(serde_json::Value),
24}
25
26#[derive(Debug, Clone, Serialize, Deserialize)]
28#[serde(untagged)]
29pub enum UpdateInstanceOrganizationSettingsError {
30 UnknownValue(serde_json::Value),
31}
32
33#[derive(Debug, Clone, Serialize, Deserialize)]
35#[serde(untagged)]
36pub enum UpdateInstanceRestrictionsError {
37 Status402(crate::models::ClerkErrors),
38 UnknownValue(serde_json::Value),
39}
40
41
42pub async fn update_instance(configuration: &configuration::Configuration, update_instance_request: Option<crate::models::UpdateInstanceRequest>) -> Result<(), Error<UpdateInstanceError>> {
44 let local_var_configuration = configuration;
45
46 let local_var_client = &local_var_configuration.client;
47
48 let local_var_uri_str = format!("{}/instance", local_var_configuration.base_path);
49 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PATCH, local_var_uri_str.as_str());
50
51 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
52 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
53 }
54 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
55 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
56 };
57 local_var_req_builder = local_var_req_builder.json(&update_instance_request);
58
59 let local_var_req = local_var_req_builder.build()?;
60 let local_var_resp = local_var_client.execute(local_var_req).await?;
61
62 let local_var_status = local_var_resp.status();
63 let local_var_content = local_var_resp.text().await?;
64
65 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
66 Ok(())
67 } else {
68 let local_var_entity: Option<UpdateInstanceError> = serde_json::from_str(&local_var_content).ok();
69 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
70 Err(Error::ResponseError(local_var_error))
71 }
72}
73
74pub async fn update_instance_organization_settings(configuration: &configuration::Configuration, update_instance_organization_settings_request: Option<crate::models::UpdateInstanceOrganizationSettingsRequest>) -> Result<crate::models::OrganizationSettings, Error<UpdateInstanceOrganizationSettingsError>> {
76 let local_var_configuration = configuration;
77
78 let local_var_client = &local_var_configuration.client;
79
80 let local_var_uri_str = format!("{}/instance/organization_settings", local_var_configuration.base_path);
81 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PATCH, local_var_uri_str.as_str());
82
83 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
84 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
85 }
86 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
87 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
88 };
89 local_var_req_builder = local_var_req_builder.json(&update_instance_organization_settings_request);
90
91 let local_var_req = local_var_req_builder.build()?;
92 let local_var_resp = local_var_client.execute(local_var_req).await?;
93
94 let local_var_status = local_var_resp.status();
95 let local_var_content = local_var_resp.text().await?;
96
97 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
98 serde_json::from_str(&local_var_content).map_err(Error::from)
99 } else {
100 let local_var_entity: Option<UpdateInstanceOrganizationSettingsError> = serde_json::from_str(&local_var_content).ok();
101 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
102 Err(Error::ResponseError(local_var_error))
103 }
104}
105
106pub async fn update_instance_restrictions(configuration: &configuration::Configuration, update_instance_restrictions_request: Option<crate::models::UpdateInstanceRestrictionsRequest>) -> Result<crate::models::InstanceRestrictions, Error<UpdateInstanceRestrictionsError>> {
108 let local_var_configuration = configuration;
109
110 let local_var_client = &local_var_configuration.client;
111
112 let local_var_uri_str = format!("{}/instance/restrictions", local_var_configuration.base_path);
113 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PATCH, local_var_uri_str.as_str());
114
115 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
116 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
117 }
118 if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
119 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
120 };
121 local_var_req_builder = local_var_req_builder.json(&update_instance_restrictions_request);
122
123 let local_var_req = local_var_req_builder.build()?;
124 let local_var_resp = local_var_client.execute(local_var_req).await?;
125
126 let local_var_status = local_var_resp.status();
127 let local_var_content = local_var_resp.text().await?;
128
129 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
130 serde_json::from_str(&local_var_content).map_err(Error::from)
131 } else {
132 let local_var_entity: Option<UpdateInstanceRestrictionsError> = serde_json::from_str(&local_var_content).ok();
133 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
134 Err(Error::ResponseError(local_var_error))
135 }
136}
137