windmill_api/apis/
input_api.rs

1/*
2 * Windmill API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 1.505.0
7 * Contact: contact@windmill.dev
8 * Generated by: https://openapi-generator.tech
9 */
10
11
12use reqwest;
13use serde::{Deserialize, Serialize};
14use crate::{apis::ResponseContent, models};
15use super::{Error, configuration};
16
17
18/// struct for typed errors of method [`create_input`]
19#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum CreateInputError {
22    UnknownValue(serde_json::Value),
23}
24
25/// struct for typed errors of method [`delete_input`]
26#[derive(Debug, Clone, Serialize, Deserialize)]
27#[serde(untagged)]
28pub enum DeleteInputError {
29    UnknownValue(serde_json::Value),
30}
31
32/// struct for typed errors of method [`get_args_from_history_or_saved_input`]
33#[derive(Debug, Clone, Serialize, Deserialize)]
34#[serde(untagged)]
35pub enum GetArgsFromHistoryOrSavedInputError {
36    UnknownValue(serde_json::Value),
37}
38
39/// struct for typed errors of method [`get_input_history`]
40#[derive(Debug, Clone, Serialize, Deserialize)]
41#[serde(untagged)]
42pub enum GetInputHistoryError {
43    UnknownValue(serde_json::Value),
44}
45
46/// struct for typed errors of method [`list_inputs`]
47#[derive(Debug, Clone, Serialize, Deserialize)]
48#[serde(untagged)]
49pub enum ListInputsError {
50    UnknownValue(serde_json::Value),
51}
52
53/// struct for typed errors of method [`update_input`]
54#[derive(Debug, Clone, Serialize, Deserialize)]
55#[serde(untagged)]
56pub enum UpdateInputError {
57    UnknownValue(serde_json::Value),
58}
59
60
61pub async fn create_input(configuration: &configuration::Configuration, workspace: &str, create_input: models::CreateInput, runnable_id: Option<&str>, runnable_type: Option<models::RunnableType>) -> Result<uuid::Uuid, Error<CreateInputError>> {
62    let local_var_configuration = configuration;
63
64    let local_var_client = &local_var_configuration.client;
65
66    let local_var_uri_str = format!("{}/w/{workspace}/inputs/create", local_var_configuration.base_path, workspace=crate::apis::urlencode(workspace));
67    let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
68
69    if let Some(ref local_var_str) = runnable_id {
70        local_var_req_builder = local_var_req_builder.query(&[("runnable_id", &local_var_str.to_string())]);
71    }
72    if let Some(ref local_var_str) = runnable_type {
73        local_var_req_builder = local_var_req_builder.query(&[("runnable_type", &local_var_str.to_string())]);
74    }
75    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
76        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
77    }
78    if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
79        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
80    };
81    local_var_req_builder = local_var_req_builder.json(&create_input);
82
83    let local_var_req = local_var_req_builder.build()?;
84    let local_var_resp = local_var_client.execute(local_var_req).await?;
85
86    let local_var_status = local_var_resp.status();
87    let local_var_content = local_var_resp.text().await?;
88
89    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
90        crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).map_err(Error::from)
91    } else {
92        let local_var_entity: Option<CreateInputError> = crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).ok();
93        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
94        Err(Error::ResponseError(local_var_error))
95    }
96}
97
98pub async fn delete_input(configuration: &configuration::Configuration, workspace: &str, input: &str) -> Result<uuid::Uuid, Error<DeleteInputError>> {
99    let local_var_configuration = configuration;
100
101    let local_var_client = &local_var_configuration.client;
102
103    let local_var_uri_str = format!("{}/w/{workspace}/inputs/delete/{input}", local_var_configuration.base_path, workspace=crate::apis::urlencode(workspace), input=crate::apis::urlencode(input));
104    let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
105
106    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
107        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
108    }
109    if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
110        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
111    };
112
113    let local_var_req = local_var_req_builder.build()?;
114    let local_var_resp = local_var_client.execute(local_var_req).await?;
115
116    let local_var_status = local_var_resp.status();
117    let local_var_content = local_var_resp.text().await?;
118
119    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
120        crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).map_err(Error::from)
121    } else {
122        let local_var_entity: Option<DeleteInputError> = crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).ok();
123        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
124        Err(Error::ResponseError(local_var_error))
125    }
126}
127
128pub async fn get_args_from_history_or_saved_input(configuration: &configuration::Configuration, workspace: &str, job_or_input_id: &str, input: Option<bool>, allow_large: Option<bool>) -> Result<serde_json::Value, Error<GetArgsFromHistoryOrSavedInputError>> {
129    let local_var_configuration = configuration;
130
131    let local_var_client = &local_var_configuration.client;
132
133    let local_var_uri_str = format!("{}/w/{workspace}/inputs/{jobOrInputId}/args", local_var_configuration.base_path, workspace=crate::apis::urlencode(workspace), jobOrInputId=crate::apis::urlencode(job_or_input_id));
134    let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
135
136    if let Some(ref local_var_str) = input {
137        local_var_req_builder = local_var_req_builder.query(&[("input", &local_var_str.to_string())]);
138    }
139    if let Some(ref local_var_str) = allow_large {
140        local_var_req_builder = local_var_req_builder.query(&[("allow_large", &local_var_str.to_string())]);
141    }
142    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
143        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
144    }
145    if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
146        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
147    };
148
149    let local_var_req = local_var_req_builder.build()?;
150    let local_var_resp = local_var_client.execute(local_var_req).await?;
151
152    let local_var_status = local_var_resp.status();
153    let local_var_content = local_var_resp.text().await?;
154
155    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
156        crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).map_err(Error::from)
157    } else {
158        let local_var_entity: Option<GetArgsFromHistoryOrSavedInputError> = crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).ok();
159        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
160        Err(Error::ResponseError(local_var_error))
161    }
162}
163
164pub async fn get_input_history(configuration: &configuration::Configuration, workspace: &str, runnable_id: Option<&str>, runnable_type: Option<models::RunnableType>, page: Option<i32>, per_page: Option<i32>, args: Option<&str>, include_preview: Option<bool>) -> Result<Vec<models::Input>, Error<GetInputHistoryError>> {
165    let local_var_configuration = configuration;
166
167    let local_var_client = &local_var_configuration.client;
168
169    let local_var_uri_str = format!("{}/w/{workspace}/inputs/history", local_var_configuration.base_path, workspace=crate::apis::urlencode(workspace));
170    let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
171
172    if let Some(ref local_var_str) = runnable_id {
173        local_var_req_builder = local_var_req_builder.query(&[("runnable_id", &local_var_str.to_string())]);
174    }
175    if let Some(ref local_var_str) = runnable_type {
176        local_var_req_builder = local_var_req_builder.query(&[("runnable_type", &local_var_str.to_string())]);
177    }
178    if let Some(ref local_var_str) = page {
179        local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
180    }
181    if let Some(ref local_var_str) = per_page {
182        local_var_req_builder = local_var_req_builder.query(&[("per_page", &local_var_str.to_string())]);
183    }
184    if let Some(ref local_var_str) = args {
185        local_var_req_builder = local_var_req_builder.query(&[("args", &local_var_str.to_string())]);
186    }
187    if let Some(ref local_var_str) = include_preview {
188        local_var_req_builder = local_var_req_builder.query(&[("include_preview", &local_var_str.to_string())]);
189    }
190    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
191        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
192    }
193    if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
194        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.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        crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).map_err(Error::from)
205    } else {
206        let local_var_entity: Option<GetInputHistoryError> = crate::from_str_patched/* Externally injected from /build.nu */(&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 list_inputs(configuration: &configuration::Configuration, workspace: &str, runnable_id: Option<&str>, runnable_type: Option<models::RunnableType>, page: Option<i32>, per_page: Option<i32>) -> Result<Vec<models::Input>, Error<ListInputsError>> {
213    let local_var_configuration = configuration;
214
215    let local_var_client = &local_var_configuration.client;
216
217    let local_var_uri_str = format!("{}/w/{workspace}/inputs/list", local_var_configuration.base_path, workspace=crate::apis::urlencode(workspace));
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_str) = runnable_id {
221        local_var_req_builder = local_var_req_builder.query(&[("runnable_id", &local_var_str.to_string())]);
222    }
223    if let Some(ref local_var_str) = runnable_type {
224        local_var_req_builder = local_var_req_builder.query(&[("runnable_type", &local_var_str.to_string())]);
225    }
226    if let Some(ref local_var_str) = page {
227        local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
228    }
229    if let Some(ref local_var_str) = per_page {
230        local_var_req_builder = local_var_req_builder.query(&[("per_page", &local_var_str.to_string())]);
231    }
232    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
233        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
234    }
235    if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
236        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
237    };
238
239    let local_var_req = local_var_req_builder.build()?;
240    let local_var_resp = local_var_client.execute(local_var_req).await?;
241
242    let local_var_status = local_var_resp.status();
243    let local_var_content = local_var_resp.text().await?;
244
245    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
246        crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).map_err(Error::from)
247    } else {
248        let local_var_entity: Option<ListInputsError> = crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).ok();
249        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
250        Err(Error::ResponseError(local_var_error))
251    }
252}
253
254pub async fn update_input(configuration: &configuration::Configuration, workspace: &str, update_input: models::UpdateInput) -> Result<uuid::Uuid, Error<UpdateInputError>> {
255    let local_var_configuration = configuration;
256
257    let local_var_client = &local_var_configuration.client;
258
259    let local_var_uri_str = format!("{}/w/{workspace}/inputs/update", local_var_configuration.base_path, workspace=crate::apis::urlencode(workspace));
260    let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
261
262    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
263        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
264    }
265    if let Some(ref local_var_token) = local_var_configuration.bearer_access_token {
266        local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
267    };
268    local_var_req_builder = local_var_req_builder.json(&update_input);
269
270    let local_var_req = local_var_req_builder.build()?;
271    let local_var_resp = local_var_client.execute(local_var_req).await?;
272
273    let local_var_status = local_var_resp.status();
274    let local_var_content = local_var_resp.text().await?;
275
276    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
277        crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).map_err(Error::from)
278    } else {
279        let local_var_entity: Option<UpdateInputError> = crate::from_str_patched/* Externally injected from /build.nu */(&local_var_content).ok();
280        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
281        Err(Error::ResponseError(local_var_error))
282    }
283}
284