radarr_api_rs/apis/
movie_file_api.rs

1/*
2 * Radarr
3 *
4 * Radarr API docs
5 *
6 * The version of the OpenAPI document: 3.0.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 [`api_v3_moviefile_bulk_delete`]
19#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum ApiV3MoviefileBulkDeleteError {
22    UnknownValue(serde_json::Value),
23}
24
25/// struct for typed errors of method [`api_v3_moviefile_editor_put`]
26#[derive(Debug, Clone, Serialize, Deserialize)]
27#[serde(untagged)]
28pub enum ApiV3MoviefileEditorPutError {
29    UnknownValue(serde_json::Value),
30}
31
32/// struct for typed errors of method [`api_v3_moviefile_get`]
33#[derive(Debug, Clone, Serialize, Deserialize)]
34#[serde(untagged)]
35pub enum ApiV3MoviefileGetError {
36    UnknownValue(serde_json::Value),
37}
38
39/// struct for typed errors of method [`api_v3_moviefile_id_delete`]
40#[derive(Debug, Clone, Serialize, Deserialize)]
41#[serde(untagged)]
42pub enum ApiV3MoviefileIdDeleteError {
43    UnknownValue(serde_json::Value),
44}
45
46/// struct for typed errors of method [`api_v3_moviefile_id_get`]
47#[derive(Debug, Clone, Serialize, Deserialize)]
48#[serde(untagged)]
49pub enum ApiV3MoviefileIdGetError {
50    UnknownValue(serde_json::Value),
51}
52
53/// struct for typed errors of method [`api_v3_moviefile_id_put`]
54#[derive(Debug, Clone, Serialize, Deserialize)]
55#[serde(untagged)]
56pub enum ApiV3MoviefileIdPutError {
57    UnknownValue(serde_json::Value),
58}
59
60
61pub async fn api_v3_moviefile_bulk_delete(configuration: &configuration::Configuration, movie_file_list_resource: Option<crate::models::MovieFileListResource>) -> Result<(), Error<ApiV3MoviefileBulkDeleteError>> {
62    let local_var_configuration = configuration;
63
64    let local_var_client = &local_var_configuration.client;
65
66    let local_var_uri_str = format!("{}/api/v3/moviefile/bulk", local_var_configuration.base_path);
67    let mut local_var_req_builder = local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
68
69    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
70        let local_var_key = local_var_apikey.key.clone();
71        let local_var_value = match local_var_apikey.prefix {
72            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
73            None => local_var_key,
74        };
75        local_var_req_builder = local_var_req_builder.query(&[("apikey", local_var_value)]);
76    }
77    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
78        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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.header("X-Api-Key", local_var_value);
87    };
88    local_var_req_builder = local_var_req_builder.json(&movie_file_list_resource);
89
90    let local_var_req = local_var_req_builder.build()?;
91    let local_var_resp = local_var_client.execute(local_var_req).await?;
92
93    let local_var_status = local_var_resp.status();
94    let local_var_content = local_var_resp.text().await?;
95
96    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
97        Ok(())
98    } else {
99        let local_var_entity: Option<ApiV3MoviefileBulkDeleteError> = serde_json::from_str(&local_var_content).ok();
100        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
101        Err(Error::ResponseError(local_var_error))
102    }
103}
104
105pub async fn api_v3_moviefile_editor_put(configuration: &configuration::Configuration, movie_file_list_resource: Option<crate::models::MovieFileListResource>) -> Result<(), Error<ApiV3MoviefileEditorPutError>> {
106    let local_var_configuration = configuration;
107
108    let local_var_client = &local_var_configuration.client;
109
110    let local_var_uri_str = format!("{}/api/v3/moviefile/editor", local_var_configuration.base_path);
111    let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
112
113    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
114        let local_var_key = local_var_apikey.key.clone();
115        let local_var_value = match local_var_apikey.prefix {
116            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
117            None => local_var_key,
118        };
119        local_var_req_builder = local_var_req_builder.query(&[("apikey", local_var_value)]);
120    }
121    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
122        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
123    }
124    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
125        let local_var_key = local_var_apikey.key.clone();
126        let local_var_value = match local_var_apikey.prefix {
127            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
128            None => local_var_key,
129        };
130        local_var_req_builder = local_var_req_builder.header("X-Api-Key", local_var_value);
131    };
132    local_var_req_builder = local_var_req_builder.json(&movie_file_list_resource);
133
134    let local_var_req = local_var_req_builder.build()?;
135    let local_var_resp = local_var_client.execute(local_var_req).await?;
136
137    let local_var_status = local_var_resp.status();
138    let local_var_content = local_var_resp.text().await?;
139
140    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
141        Ok(())
142    } else {
143        let local_var_entity: Option<ApiV3MoviefileEditorPutError> = serde_json::from_str(&local_var_content).ok();
144        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
145        Err(Error::ResponseError(local_var_error))
146    }
147}
148
149pub async fn api_v3_moviefile_get(configuration: &configuration::Configuration, movie_id: Option<i32>, movie_file_ids: Option<Vec<i32>>) -> Result<Vec<crate::models::MovieFileResource>, Error<ApiV3MoviefileGetError>> {
150    let local_var_configuration = configuration;
151
152    let local_var_client = &local_var_configuration.client;
153
154    let local_var_uri_str = format!("{}/api/v3/moviefile", local_var_configuration.base_path);
155    let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
156
157    if let Some(ref local_var_str) = movie_id {
158        local_var_req_builder = local_var_req_builder.query(&[("movieId", &local_var_str.to_string())]);
159    }
160    if let Some(ref local_var_str) = movie_file_ids {
161        local_var_req_builder = match "multi" {
162            "multi" => local_var_req_builder.query(&local_var_str.into_iter().map(|p| ("movieFileIds".to_owned(), p.to_string())).collect::<Vec<(std::string::String, std::string::String)>>()),
163            _ => local_var_req_builder.query(&[("movieFileIds", &local_var_str.into_iter().map(|p| p.to_string()).collect::<Vec<String>>().join(",").to_string())]),
164        };
165    }
166    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
167        let local_var_key = local_var_apikey.key.clone();
168        let local_var_value = match local_var_apikey.prefix {
169            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
170            None => local_var_key,
171        };
172        local_var_req_builder = local_var_req_builder.query(&[("apikey", local_var_value)]);
173    }
174    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
175        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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("X-Api-Key", local_var_value);
184    };
185
186    let local_var_req = local_var_req_builder.build()?;
187    let local_var_resp = local_var_client.execute(local_var_req).await?;
188
189    let local_var_status = local_var_resp.status();
190    let local_var_content = local_var_resp.text().await?;
191
192    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
193        serde_json::from_str(&local_var_content).map_err(Error::from)
194    } else {
195        let local_var_entity: Option<ApiV3MoviefileGetError> = serde_json::from_str(&local_var_content).ok();
196        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
197        Err(Error::ResponseError(local_var_error))
198    }
199}
200
201pub async fn api_v3_moviefile_id_delete(configuration: &configuration::Configuration, id: i32) -> Result<(), Error<ApiV3MoviefileIdDeleteError>> {
202    let local_var_configuration = configuration;
203
204    let local_var_client = &local_var_configuration.client;
205
206    let local_var_uri_str = format!("{}/api/v3/moviefile/{id}", local_var_configuration.base_path, id=id);
207    let mut local_var_req_builder = local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
208
209    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
210        let local_var_key = local_var_apikey.key.clone();
211        let local_var_value = match local_var_apikey.prefix {
212            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
213            None => local_var_key,
214        };
215        local_var_req_builder = local_var_req_builder.query(&[("apikey", local_var_value)]);
216    }
217    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
218        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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.header("X-Api-Key", local_var_value);
227    };
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        Ok(())
237    } else {
238        let local_var_entity: Option<ApiV3MoviefileIdDeleteError> = 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
244pub async fn api_v3_moviefile_id_get(configuration: &configuration::Configuration, id: i32) -> Result<crate::models::MovieFileResource, Error<ApiV3MoviefileIdGetError>> {
245    let local_var_configuration = configuration;
246
247    let local_var_client = &local_var_configuration.client;
248
249    let local_var_uri_str = format!("{}/api/v3/moviefile/{id}", local_var_configuration.base_path, id=id);
250    let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
251
252    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
253        let local_var_key = local_var_apikey.key.clone();
254        let local_var_value = match local_var_apikey.prefix {
255            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
256            None => local_var_key,
257        };
258        local_var_req_builder = local_var_req_builder.query(&[("apikey", local_var_value)]);
259    }
260    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
261        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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("X-Api-Key", local_var_value);
270    };
271
272    let local_var_req = local_var_req_builder.build()?;
273    let local_var_resp = local_var_client.execute(local_var_req).await?;
274
275    let local_var_status = local_var_resp.status();
276    let local_var_content = local_var_resp.text().await?;
277
278    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
279        serde_json::from_str(&local_var_content).map_err(Error::from)
280    } else {
281        let local_var_entity: Option<ApiV3MoviefileIdGetError> = serde_json::from_str(&local_var_content).ok();
282        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
283        Err(Error::ResponseError(local_var_error))
284    }
285}
286
287pub async fn api_v3_moviefile_id_put(configuration: &configuration::Configuration, id: &str, movie_file_resource: Option<crate::models::MovieFileResource>) -> Result<crate::models::MovieFileResource, Error<ApiV3MoviefileIdPutError>> {
288    let local_var_configuration = configuration;
289
290    let local_var_client = &local_var_configuration.client;
291
292    let local_var_uri_str = format!("{}/api/v3/moviefile/{id}", local_var_configuration.base_path, id=crate::apis::urlencode(id));
293    let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
294
295    if let Some(ref local_var_apikey) = local_var_configuration.api_key {
296        let local_var_key = local_var_apikey.key.clone();
297        let local_var_value = match local_var_apikey.prefix {
298            Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
299            None => local_var_key,
300        };
301        local_var_req_builder = local_var_req_builder.query(&[("apikey", local_var_value)]);
302    }
303    if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
304        local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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.header("X-Api-Key", local_var_value);
313    };
314    local_var_req_builder = local_var_req_builder.json(&movie_file_resource);
315
316    let local_var_req = local_var_req_builder.build()?;
317    let local_var_resp = local_var_client.execute(local_var_req).await?;
318
319    let local_var_status = local_var_resp.status();
320    let local_var_content = local_var_resp.text().await?;
321
322    if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
323        serde_json::from_str(&local_var_content).map_err(Error::from)
324    } else {
325        let local_var_entity: Option<ApiV3MoviefileIdPutError> = serde_json::from_str(&local_var_content).ok();
326        let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
327        Err(Error::ResponseError(local_var_error))
328    }
329}
330