ehelply/apis/
fields_api.rs

1/*
2 * eHelply SDK - 1.1.118
3 *
4 * eHelply SDK for SuperStack Services
5 *
6 * The version of the OpenAPI document: 1.1.118
7 * Contact: support@ehelply.com
8 * Generated by: https://openapi-generator.tech
9 */
10
11
12use reqwest;
13
14use crate::apis::ResponseContent;
15use super::{Error, configuration};
16
17
18/// struct for typed errors of method [`create_field`]
19#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum CreateFieldError {
22    Status400(crate::models::GetAppointment403Response),
23    Status403(crate::models::GetAppointment403Response),
24    Status404(),
25    Status422(crate::models::HttpValidationError),
26    UnknownValue(serde_json::Value),
27}
28
29/// struct for typed errors of method [`delete_field`]
30#[derive(Debug, Clone, Serialize, Deserialize)]
31#[serde(untagged)]
32pub enum DeleteFieldError {
33    Status400(crate::models::GetAppointment403Response),
34    Status403(crate::models::GetAppointment403Response),
35    Status404(),
36    Status422(crate::models::HttpValidationError),
37    UnknownValue(serde_json::Value),
38}
39
40/// struct for typed errors of method [`get_field`]
41#[derive(Debug, Clone, Serialize, Deserialize)]
42#[serde(untagged)]
43pub enum GetFieldError {
44    Status403(crate::models::GetAppointment403Response),
45    Status404(crate::models::GetAppointment403Response),
46    Status422(crate::models::HttpValidationError),
47    UnknownValue(serde_json::Value),
48}
49
50/// struct for typed errors of method [`update_field`]
51#[derive(Debug, Clone, Serialize, Deserialize)]
52#[serde(untagged)]
53pub enum UpdateFieldError {
54    Status400(crate::models::GetAppointment403Response),
55    Status403(crate::models::GetAppointment403Response),
56    Status404(crate::models::GetAppointment403Response),
57    Status422(crate::models::HttpValidationError),
58    UnknownValue(serde_json::Value),
59}
60
61
62pub async fn create_field(configuration: &configuration::Configuration, field: crate::models::Field, x_access_token: Option<&str>, x_secret_token: Option<&str>, authorization: Option<&str>, ehelply_active_participant: Option<&str>, ehelply_project: Option<&str>, ehelply_data: Option<&str>) -> Result<crate::models::CreateField200Response, Error<CreateFieldError>> {
63    let local_var_configuration = configuration;
64
65    let local_var_client = &local_var_configuration.client;
66
67    let local_var_uri_str = format!("{}/fields/fields", local_var_configuration.base_path);
68    let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
69
70    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
71        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
72    }
73    if let Some(local_var_param_value) = x_access_token {
74        local_var_req_builder = local_var_req_builder.header("x-access-token", local_var_param_value.to_string());
75    }
76    if let Some(local_var_param_value) = x_secret_token {
77        local_var_req_builder = local_var_req_builder.header("x-secret-token", local_var_param_value.to_string());
78    }
79    if let Some(local_var_param_value) = authorization {
80        local_var_req_builder = local_var_req_builder.header("authorization", local_var_param_value.to_string());
81    }
82    if let Some(local_var_param_value) = ehelply_active_participant {
83        local_var_req_builder = local_var_req_builder.header("ehelply-active-participant", local_var_param_value.to_string());
84    }
85    if let Some(local_var_param_value) = ehelply_project {
86        local_var_req_builder = local_var_req_builder.header("ehelply-project", local_var_param_value.to_string());
87    }
88    if let Some(local_var_param_value) = ehelply_data {
89        local_var_req_builder = local_var_req_builder.header("ehelply-data", local_var_param_value.to_string());
90    }
91    local_var_req_builder = local_var_req_builder.json(&field);
92
93    let local_var_req = local_var_req_builder.build()?;
94    let local_var_resp = local_var_client.execute(local_var_req).await?;
95
96    let local_var_status = local_var_resp.status();
97    let local_var_content = local_var_resp.text().await?;
98
99    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
100        serde_json::from_str(&local_var_content).map_err(Error::from)
101    } else {
102        let local_var_entity: Option<CreateFieldError> = serde_json::from_str(&local_var_content).ok();
103        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
104        Err(Error::ResponseError(local_var_error))
105    }
106}
107
108pub async fn delete_field(configuration: &configuration::Configuration, field_uuid: &str, x_access_token: Option<&str>, x_secret_token: Option<&str>, authorization: Option<&str>, ehelply_active_participant: Option<&str>, ehelply_project: Option<&str>, ehelply_data: Option<&str>) -> Result<crate::models::DeleteField200Response, Error<DeleteFieldError>> {
109    let local_var_configuration = configuration;
110
111    let local_var_client = &local_var_configuration.client;
112
113    let local_var_uri_str = format!("{}/fields/fields/{field_uuid}", local_var_configuration.base_path, field_uuid=crate::apis::urlencode(field_uuid));
114    let mut local_var_req_builder = local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
115
116    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
117        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
118    }
119    if let Some(local_var_param_value) = x_access_token {
120        local_var_req_builder = local_var_req_builder.header("x-access-token", local_var_param_value.to_string());
121    }
122    if let Some(local_var_param_value) = x_secret_token {
123        local_var_req_builder = local_var_req_builder.header("x-secret-token", local_var_param_value.to_string());
124    }
125    if let Some(local_var_param_value) = authorization {
126        local_var_req_builder = local_var_req_builder.header("authorization", local_var_param_value.to_string());
127    }
128    if let Some(local_var_param_value) = ehelply_active_participant {
129        local_var_req_builder = local_var_req_builder.header("ehelply-active-participant", local_var_param_value.to_string());
130    }
131    if let Some(local_var_param_value) = ehelply_project {
132        local_var_req_builder = local_var_req_builder.header("ehelply-project", local_var_param_value.to_string());
133    }
134    if let Some(local_var_param_value) = ehelply_data {
135        local_var_req_builder = local_var_req_builder.header("ehelply-data", local_var_param_value.to_string());
136    }
137
138    let local_var_req = local_var_req_builder.build()?;
139    let local_var_resp = local_var_client.execute(local_var_req).await?;
140
141    let local_var_status = local_var_resp.status();
142    let local_var_content = local_var_resp.text().await?;
143
144    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
145        serde_json::from_str(&local_var_content).map_err(Error::from)
146    } else {
147        let local_var_entity: Option<DeleteFieldError> = serde_json::from_str(&local_var_content).ok();
148        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
149        Err(Error::ResponseError(local_var_error))
150    }
151}
152
153pub async fn get_field(configuration: &configuration::Configuration, field_uuid: &str, x_access_token: Option<&str>, x_secret_token: Option<&str>, authorization: Option<&str>, ehelply_active_participant: Option<&str>, ehelply_project: Option<&str>, ehelply_data: Option<&str>) -> Result<crate::models::FieldDynamo, Error<GetFieldError>> {
154    let local_var_configuration = configuration;
155
156    let local_var_client = &local_var_configuration.client;
157
158    let local_var_uri_str = format!("{}/fields/fields/{field_uuid}", local_var_configuration.base_path, field_uuid=crate::apis::urlencode(field_uuid));
159    let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
160
161    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
162        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
163    }
164    if let Some(local_var_param_value) = x_access_token {
165        local_var_req_builder = local_var_req_builder.header("x-access-token", local_var_param_value.to_string());
166    }
167    if let Some(local_var_param_value) = x_secret_token {
168        local_var_req_builder = local_var_req_builder.header("x-secret-token", local_var_param_value.to_string());
169    }
170    if let Some(local_var_param_value) = authorization {
171        local_var_req_builder = local_var_req_builder.header("authorization", local_var_param_value.to_string());
172    }
173    if let Some(local_var_param_value) = ehelply_active_participant {
174        local_var_req_builder = local_var_req_builder.header("ehelply-active-participant", local_var_param_value.to_string());
175    }
176    if let Some(local_var_param_value) = ehelply_project {
177        local_var_req_builder = local_var_req_builder.header("ehelply-project", local_var_param_value.to_string());
178    }
179    if let Some(local_var_param_value) = ehelply_data {
180        local_var_req_builder = local_var_req_builder.header("ehelply-data", local_var_param_value.to_string());
181    }
182
183    let local_var_req = local_var_req_builder.build()?;
184    let local_var_resp = local_var_client.execute(local_var_req).await?;
185
186    let local_var_status = local_var_resp.status();
187    let local_var_content = local_var_resp.text().await?;
188
189    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
190        serde_json::from_str(&local_var_content).map_err(Error::from)
191    } else {
192        let local_var_entity: Option<GetFieldError> = serde_json::from_str(&local_var_content).ok();
193        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
194        Err(Error::ResponseError(local_var_error))
195    }
196}
197
198pub async fn update_field(configuration: &configuration::Configuration, field_uuid: &str, field: crate::models::Field, x_access_token: Option<&str>, x_secret_token: Option<&str>, authorization: Option<&str>, ehelply_active_participant: Option<&str>, ehelply_project: Option<&str>, ehelply_data: Option<&str>) -> Result<crate::models::UpdateField200Response, Error<UpdateFieldError>> {
199    let local_var_configuration = configuration;
200
201    let local_var_client = &local_var_configuration.client;
202
203    let local_var_uri_str = format!("{}/fields/fields/{field_uuid}", local_var_configuration.base_path, field_uuid=crate::apis::urlencode(field_uuid));
204    let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
205
206    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
207        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
208    }
209    if let Some(local_var_param_value) = x_access_token {
210        local_var_req_builder = local_var_req_builder.header("x-access-token", local_var_param_value.to_string());
211    }
212    if let Some(local_var_param_value) = x_secret_token {
213        local_var_req_builder = local_var_req_builder.header("x-secret-token", local_var_param_value.to_string());
214    }
215    if let Some(local_var_param_value) = authorization {
216        local_var_req_builder = local_var_req_builder.header("authorization", local_var_param_value.to_string());
217    }
218    if let Some(local_var_param_value) = ehelply_active_participant {
219        local_var_req_builder = local_var_req_builder.header("ehelply-active-participant", local_var_param_value.to_string());
220    }
221    if let Some(local_var_param_value) = ehelply_project {
222        local_var_req_builder = local_var_req_builder.header("ehelply-project", local_var_param_value.to_string());
223    }
224    if let Some(local_var_param_value) = ehelply_data {
225        local_var_req_builder = local_var_req_builder.header("ehelply-data", local_var_param_value.to_string());
226    }
227    local_var_req_builder = local_var_req_builder.json(&field);
228
229    let local_var_req = local_var_req_builder.build()?;
230    let local_var_resp = local_var_client.execute(local_var_req).await?;
231
232    let local_var_status = local_var_resp.status();
233    let local_var_content = local_var_resp.text().await?;
234
235    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
236        serde_json::from_str(&local_var_content).map_err(Error::from)
237    } else {
238        let local_var_entity: Option<UpdateFieldError> = serde_json::from_str(&local_var_content).ok();
239        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
240        Err(Error::ResponseError(local_var_error))
241    }
242}
243