gitea_rs/apis/
miscellaneous_api.rs

1/*
2 * Gitea API.
3 *
4 * This documentation describes the Gitea API.
5 *
6 * The version of the OpenAPI document: 1.19.0
7 * 
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 [`get_node_info`]
19#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum GetNodeInfoError {
22    UnknownValue(serde_json::Value),
23}
24
25/// struct for typed errors of method [`get_signing_key`]
26#[derive(Debug, Clone, Serialize, Deserialize)]
27#[serde(untagged)]
28pub enum GetSigningKeyError {
29    UnknownValue(serde_json::Value),
30}
31
32/// struct for typed errors of method [`get_version`]
33#[derive(Debug, Clone, Serialize, Deserialize)]
34#[serde(untagged)]
35pub enum GetVersionError {
36    UnknownValue(serde_json::Value),
37}
38
39/// struct for typed errors of method [`render_markdown`]
40#[derive(Debug, Clone, Serialize, Deserialize)]
41#[serde(untagged)]
42pub enum RenderMarkdownError {
43    Status422(),
44    UnknownValue(serde_json::Value),
45}
46
47/// struct for typed errors of method [`render_markdown_raw`]
48#[derive(Debug, Clone, Serialize, Deserialize)]
49#[serde(untagged)]
50pub enum RenderMarkdownRawError {
51    Status422(),
52    UnknownValue(serde_json::Value),
53}
54
55
56pub async fn get_node_info(configuration: &configuration::Configuration, ) -> Result<crate::models::NodeInfo, Error<GetNodeInfoError>> {
57    let local_var_configuration = configuration;
58
59    let local_var_client = &local_var_configuration.client;
60
61    let local_var_uri_str = format!("{}/nodeinfo", local_var_configuration.base_path);
62    let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
63
64    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
65        let local_var_key = local_var_apikey.key.clone();
66        let local_var_value = match local_var_apikey.prefix {
67            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
68            None => local_var_key,
69        };
70        local_var_req_builder = local_var_req_builder.query(&[("access_token", local_var_value)]);
71    }
72    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
73        let local_var_key = local_var_apikey.key.clone();
74        let local_var_value = match local_var_apikey.prefix {
75            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
76            None => local_var_key,
77        };
78        local_var_req_builder = local_var_req_builder.query(&[("sudo", local_var_value)]);
79    }
80    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
81        let local_var_key = local_var_apikey.key.clone();
82        let local_var_value = match local_var_apikey.prefix {
83            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
84            None => local_var_key,
85        };
86        local_var_req_builder = local_var_req_builder.query(&[("token", local_var_value)]);
87    }
88    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
89        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
90    }
91    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
92        let local_var_key = local_var_apikey.key.clone();
93        let local_var_value = match local_var_apikey.prefix {
94            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
95            None => local_var_key,
96        };
97        local_var_req_builder = local_var_req_builder.header("X-GITEA-OTP", local_var_value);
98    };
99    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
100        let local_var_key = local_var_apikey.key.clone();
101        let local_var_value = match local_var_apikey.prefix {
102            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
103            None => local_var_key,
104        };
105        local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
106    };
107    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
108        let local_var_key = local_var_apikey.key.clone();
109        let local_var_value = match local_var_apikey.prefix {
110            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
111            None => local_var_key,
112        };
113        local_var_req_builder = local_var_req_builder.header("Sudo", local_var_value);
114    };
115    if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
116        local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
117    };
118
119    let local_var_req = local_var_req_builder.build()?;
120    let local_var_resp = local_var_client.execute(local_var_req).await?;
121
122    let local_var_status = local_var_resp.status();
123    let local_var_content = local_var_resp.text().await?;
124
125    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
126        serde_json::from_str(&local_var_content).map_err(Error::from)
127    } else {
128        let local_var_entity: Option<GetNodeInfoError> = serde_json::from_str(&local_var_content).ok();
129        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
130        Err(Error::ResponseError(local_var_error))
131    }
132}
133
134pub async fn get_signing_key(configuration: &configuration::Configuration, ) -> Result<String, Error<GetSigningKeyError>> {
135    let local_var_configuration = configuration;
136
137    let local_var_client = &local_var_configuration.client;
138
139    let local_var_uri_str = format!("{}/signing-key.gpg", local_var_configuration.base_path);
140    let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
141
142    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
143        let local_var_key = local_var_apikey.key.clone();
144        let local_var_value = match local_var_apikey.prefix {
145            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
146            None => local_var_key,
147        };
148        local_var_req_builder = local_var_req_builder.query(&[("access_token", local_var_value)]);
149    }
150    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
151        let local_var_key = local_var_apikey.key.clone();
152        let local_var_value = match local_var_apikey.prefix {
153            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
154            None => local_var_key,
155        };
156        local_var_req_builder = local_var_req_builder.query(&[("sudo", local_var_value)]);
157    }
158    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
159        let local_var_key = local_var_apikey.key.clone();
160        let local_var_value = match local_var_apikey.prefix {
161            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
162            None => local_var_key,
163        };
164        local_var_req_builder = local_var_req_builder.query(&[("token", local_var_value)]);
165    }
166    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
167        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
168    }
169    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
170        let local_var_key = local_var_apikey.key.clone();
171        let local_var_value = match local_var_apikey.prefix {
172            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
173            None => local_var_key,
174        };
175        local_var_req_builder = local_var_req_builder.header("X-GITEA-OTP", local_var_value);
176    };
177    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
178        let local_var_key = local_var_apikey.key.clone();
179        let local_var_value = match local_var_apikey.prefix {
180            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
181            None => local_var_key,
182        };
183        local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
184    };
185    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
186        let local_var_key = local_var_apikey.key.clone();
187        let local_var_value = match local_var_apikey.prefix {
188            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
189            None => local_var_key,
190        };
191        local_var_req_builder = local_var_req_builder.header("Sudo", local_var_value);
192    };
193    if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
194        local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
195    };
196
197    let local_var_req = local_var_req_builder.build()?;
198    let local_var_resp = local_var_client.execute(local_var_req).await?;
199
200    let local_var_status = local_var_resp.status();
201    let local_var_content = local_var_resp.text().await?;
202
203    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
204        serde_json::from_str(&local_var_content).map_err(Error::from)
205    } else {
206        let local_var_entity: Option<GetSigningKeyError> = serde_json::from_str(&local_var_content).ok();
207        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
208        Err(Error::ResponseError(local_var_error))
209    }
210}
211
212pub async fn get_version(configuration: &configuration::Configuration, ) -> Result<crate::models::ServerVersion, Error<GetVersionError>> {
213    let local_var_configuration = configuration;
214
215    let local_var_client = &local_var_configuration.client;
216
217    let local_var_uri_str = format!("{}/version", local_var_configuration.base_path);
218    let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
219
220    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
221        let local_var_key = local_var_apikey.key.clone();
222        let local_var_value = match local_var_apikey.prefix {
223            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
224            None => local_var_key,
225        };
226        local_var_req_builder = local_var_req_builder.query(&[("access_token", local_var_value)]);
227    }
228    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
229        let local_var_key = local_var_apikey.key.clone();
230        let local_var_value = match local_var_apikey.prefix {
231            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
232            None => local_var_key,
233        };
234        local_var_req_builder = local_var_req_builder.query(&[("sudo", local_var_value)]);
235    }
236    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
237        let local_var_key = local_var_apikey.key.clone();
238        let local_var_value = match local_var_apikey.prefix {
239            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
240            None => local_var_key,
241        };
242        local_var_req_builder = local_var_req_builder.query(&[("token", local_var_value)]);
243    }
244    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
245        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
246    }
247    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
248        let local_var_key = local_var_apikey.key.clone();
249        let local_var_value = match local_var_apikey.prefix {
250            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
251            None => local_var_key,
252        };
253        local_var_req_builder = local_var_req_builder.header("X-GITEA-OTP", local_var_value);
254    };
255    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
256        let local_var_key = local_var_apikey.key.clone();
257        let local_var_value = match local_var_apikey.prefix {
258            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
259            None => local_var_key,
260        };
261        local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
262    };
263    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
264        let local_var_key = local_var_apikey.key.clone();
265        let local_var_value = match local_var_apikey.prefix {
266            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
267            None => local_var_key,
268        };
269        local_var_req_builder = local_var_req_builder.header("Sudo", local_var_value);
270    };
271    if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
272        local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
273    };
274
275    let local_var_req = local_var_req_builder.build()?;
276    let local_var_resp = local_var_client.execute(local_var_req).await?;
277
278    let local_var_status = local_var_resp.status();
279    let local_var_content = local_var_resp.text().await?;
280
281    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
282        serde_json::from_str(&local_var_content).map_err(Error::from)
283    } else {
284        let local_var_entity: Option<GetVersionError> = serde_json::from_str(&local_var_content).ok();
285        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
286        Err(Error::ResponseError(local_var_error))
287    }
288}
289
290pub async fn render_markdown(configuration: &configuration::Configuration, body: Option<crate::models::MarkdownOption>) -> Result<String, Error<RenderMarkdownError>> {
291    let local_var_configuration = configuration;
292
293    let local_var_client = &local_var_configuration.client;
294
295    let local_var_uri_str = format!("{}/markdown", local_var_configuration.base_path);
296    let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
297
298    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
299        let local_var_key = local_var_apikey.key.clone();
300        let local_var_value = match local_var_apikey.prefix {
301            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
302            None => local_var_key,
303        };
304        local_var_req_builder = local_var_req_builder.query(&[("access_token", local_var_value)]);
305    }
306    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
307        let local_var_key = local_var_apikey.key.clone();
308        let local_var_value = match local_var_apikey.prefix {
309            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
310            None => local_var_key,
311        };
312        local_var_req_builder = local_var_req_builder.query(&[("sudo", local_var_value)]);
313    }
314    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
315        let local_var_key = local_var_apikey.key.clone();
316        let local_var_value = match local_var_apikey.prefix {
317            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
318            None => local_var_key,
319        };
320        local_var_req_builder = local_var_req_builder.query(&[("token", local_var_value)]);
321    }
322    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
323        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
324    }
325    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
326        let local_var_key = local_var_apikey.key.clone();
327        let local_var_value = match local_var_apikey.prefix {
328            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
329            None => local_var_key,
330        };
331        local_var_req_builder = local_var_req_builder.header("X-GITEA-OTP", local_var_value);
332    };
333    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
334        let local_var_key = local_var_apikey.key.clone();
335        let local_var_value = match local_var_apikey.prefix {
336            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
337            None => local_var_key,
338        };
339        local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
340    };
341    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
342        let local_var_key = local_var_apikey.key.clone();
343        let local_var_value = match local_var_apikey.prefix {
344            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
345            None => local_var_key,
346        };
347        local_var_req_builder = local_var_req_builder.header("Sudo", local_var_value);
348    };
349    if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
350        local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
351    };
352    local_var_req_builder = local_var_req_builder.json(&body);
353
354    let local_var_req = local_var_req_builder.build()?;
355    let local_var_resp = local_var_client.execute(local_var_req).await?;
356
357    let local_var_status = local_var_resp.status();
358    let local_var_content = local_var_resp.text().await?;
359
360    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
361        serde_json::from_str(&local_var_content).map_err(Error::from)
362    } else {
363        let local_var_entity: Option<RenderMarkdownError> = serde_json::from_str(&local_var_content).ok();
364        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
365        Err(Error::ResponseError(local_var_error))
366    }
367}
368
369pub async fn render_markdown_raw(configuration: &configuration::Configuration, body: &str) -> Result<String, Error<RenderMarkdownRawError>> {
370    let local_var_configuration = configuration;
371
372    let local_var_client = &local_var_configuration.client;
373
374    let local_var_uri_str = format!("{}/markdown/raw", local_var_configuration.base_path);
375    let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
376
377    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
378        let local_var_key = local_var_apikey.key.clone();
379        let local_var_value = match local_var_apikey.prefix {
380            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
381            None => local_var_key,
382        };
383        local_var_req_builder = local_var_req_builder.query(&[("access_token", local_var_value)]);
384    }
385    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
386        let local_var_key = local_var_apikey.key.clone();
387        let local_var_value = match local_var_apikey.prefix {
388            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
389            None => local_var_key,
390        };
391        local_var_req_builder = local_var_req_builder.query(&[("sudo", local_var_value)]);
392    }
393    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
394        let local_var_key = local_var_apikey.key.clone();
395        let local_var_value = match local_var_apikey.prefix {
396            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
397            None => local_var_key,
398        };
399        local_var_req_builder = local_var_req_builder.query(&[("token", local_var_value)]);
400    }
401    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
402        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
403    }
404    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
405        let local_var_key = local_var_apikey.key.clone();
406        let local_var_value = match local_var_apikey.prefix {
407            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
408            None => local_var_key,
409        };
410        local_var_req_builder = local_var_req_builder.header("X-GITEA-OTP", local_var_value);
411    };
412    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
413        let local_var_key = local_var_apikey.key.clone();
414        let local_var_value = match local_var_apikey.prefix {
415            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
416            None => local_var_key,
417        };
418        local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
419    };
420    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
421        let local_var_key = local_var_apikey.key.clone();
422        let local_var_value = match local_var_apikey.prefix {
423            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
424            None => local_var_key,
425        };
426        local_var_req_builder = local_var_req_builder.header("Sudo", local_var_value);
427    };
428    if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
429        local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
430    };
431    local_var_req_builder = local_var_req_builder.json(&body);
432
433    let local_var_req = local_var_req_builder.build()?;
434    let local_var_resp = local_var_client.execute(local_var_req).await?;
435
436    let local_var_status = local_var_resp.status();
437    let local_var_content = local_var_resp.text().await?;
438
439    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
440        serde_json::from_str(&local_var_content).map_err(Error::from)
441    } else {
442        let local_var_entity: Option<RenderMarkdownRawError> = serde_json::from_str(&local_var_content).ok();
443        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
444        Err(Error::ResponseError(local_var_error))
445    }
446}
447