1use reqwest;
13
14use crate::{apis::ResponseContent, models};
15use super::{Error, configuration};
16
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum CryptoCertificatekeypairsCreateError {
22 Status400(models::ValidationError),
23 Status403(models::GenericError),
24 UnknownValue(serde_json::Value),
25}
26
27#[derive(Debug, Clone, Serialize, Deserialize)]
29#[serde(untagged)]
30pub enum CryptoCertificatekeypairsDestroyError {
31 Status400(models::ValidationError),
32 Status403(models::GenericError),
33 UnknownValue(serde_json::Value),
34}
35
36#[derive(Debug, Clone, Serialize, Deserialize)]
38#[serde(untagged)]
39pub enum CryptoCertificatekeypairsGenerateCreateError {
40 Status400(),
41 Status403(models::GenericError),
42 UnknownValue(serde_json::Value),
43}
44
45#[derive(Debug, Clone, Serialize, Deserialize)]
47#[serde(untagged)]
48pub enum CryptoCertificatekeypairsListError {
49 Status400(models::ValidationError),
50 Status403(models::GenericError),
51 UnknownValue(serde_json::Value),
52}
53
54#[derive(Debug, Clone, Serialize, Deserialize)]
56#[serde(untagged)]
57pub enum CryptoCertificatekeypairsPartialUpdateError {
58 Status400(models::ValidationError),
59 Status403(models::GenericError),
60 UnknownValue(serde_json::Value),
61}
62
63#[derive(Debug, Clone, Serialize, Deserialize)]
65#[serde(untagged)]
66pub enum CryptoCertificatekeypairsRetrieveError {
67 Status400(models::ValidationError),
68 Status403(models::GenericError),
69 UnknownValue(serde_json::Value),
70}
71
72#[derive(Debug, Clone, Serialize, Deserialize)]
74#[serde(untagged)]
75pub enum CryptoCertificatekeypairsUpdateError {
76 Status400(models::ValidationError),
77 Status403(models::GenericError),
78 UnknownValue(serde_json::Value),
79}
80
81#[derive(Debug, Clone, Serialize, Deserialize)]
83#[serde(untagged)]
84pub enum CryptoCertificatekeypairsUsedByListError {
85 Status400(models::ValidationError),
86 Status403(models::GenericError),
87 UnknownValue(serde_json::Value),
88}
89
90#[derive(Debug, Clone, Serialize, Deserialize)]
92#[serde(untagged)]
93pub enum CryptoCertificatekeypairsViewCertificateRetrieveError {
94 Status400(models::ValidationError),
95 Status403(models::GenericError),
96 UnknownValue(serde_json::Value),
97}
98
99#[derive(Debug, Clone, Serialize, Deserialize)]
101#[serde(untagged)]
102pub enum CryptoCertificatekeypairsViewPrivateKeyRetrieveError {
103 Status400(models::ValidationError),
104 Status403(models::GenericError),
105 UnknownValue(serde_json::Value),
106}
107
108
109pub async fn crypto_certificatekeypairs_create(configuration: &configuration::Configuration, certificate_key_pair_request: models::CertificateKeyPairRequest) -> Result<models::CertificateKeyPair, Error<CryptoCertificatekeypairsCreateError>> {
111 let local_var_configuration = configuration;
112
113 let local_var_client = &local_var_configuration.client;
114
115 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/", local_var_configuration.base_path);
116 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
117
118 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
119 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
120 }
121 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
122 let local_var_key = local_var_apikey.key.clone();
123 let local_var_value = match local_var_apikey.prefix {
124 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
125 None => local_var_key,
126 };
127 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
128 };
129 local_var_req_builder = local_var_req_builder.json(&certificate_key_pair_request);
130
131 let local_var_req = local_var_req_builder.build()?;
132 let local_var_resp = local_var_client.execute(local_var_req).await?;
133
134 let local_var_status = local_var_resp.status();
135 let local_var_content = local_var_resp.text().await?;
136
137 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
138 serde_json::from_str(&local_var_content).map_err(Error::from)
139 } else {
140 let local_var_entity: Option<CryptoCertificatekeypairsCreateError> = serde_json::from_str(&local_var_content).ok();
141 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
142 Err(Error::ResponseError(local_var_error))
143 }
144}
145
146pub async fn crypto_certificatekeypairs_destroy(configuration: &configuration::Configuration, kp_uuid: &str) -> Result<(), Error<CryptoCertificatekeypairsDestroyError>> {
148 let local_var_configuration = configuration;
149
150 let local_var_client = &local_var_configuration.client;
151
152 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/{kp_uuid}/", local_var_configuration.base_path, kp_uuid=crate::apis::urlencode(kp_uuid));
153 let mut local_var_req_builder = local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
154
155 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
156 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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.header("Authorization", local_var_value);
165 };
166
167 let local_var_req = local_var_req_builder.build()?;
168 let local_var_resp = local_var_client.execute(local_var_req).await?;
169
170 let local_var_status = local_var_resp.status();
171 let local_var_content = local_var_resp.text().await?;
172
173 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
174 Ok(())
175 } else {
176 let local_var_entity: Option<CryptoCertificatekeypairsDestroyError> = serde_json::from_str(&local_var_content).ok();
177 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
178 Err(Error::ResponseError(local_var_error))
179 }
180}
181
182pub async fn crypto_certificatekeypairs_generate_create(configuration: &configuration::Configuration, certificate_generation_request: models::CertificateGenerationRequest) -> Result<models::CertificateKeyPair, Error<CryptoCertificatekeypairsGenerateCreateError>> {
184 let local_var_configuration = configuration;
185
186 let local_var_client = &local_var_configuration.client;
187
188 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/generate/", local_var_configuration.base_path);
189 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
190
191 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
192 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
193 }
194 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
195 let local_var_key = local_var_apikey.key.clone();
196 let local_var_value = match local_var_apikey.prefix {
197 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
198 None => local_var_key,
199 };
200 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
201 };
202 local_var_req_builder = local_var_req_builder.json(&certificate_generation_request);
203
204 let local_var_req = local_var_req_builder.build()?;
205 let local_var_resp = local_var_client.execute(local_var_req).await?;
206
207 let local_var_status = local_var_resp.status();
208 let local_var_content = local_var_resp.text().await?;
209
210 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
211 serde_json::from_str(&local_var_content).map_err(Error::from)
212 } else {
213 let local_var_entity: Option<CryptoCertificatekeypairsGenerateCreateError> = serde_json::from_str(&local_var_content).ok();
214 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
215 Err(Error::ResponseError(local_var_error))
216 }
217}
218
219pub async fn crypto_certificatekeypairs_list(configuration: &configuration::Configuration, has_key: Option<bool>, include_details: Option<bool>, managed: Option<&str>, name: Option<&str>, ordering: Option<&str>, page: Option<i32>, page_size: Option<i32>, search: Option<&str>) -> Result<models::PaginatedCertificateKeyPairList, Error<CryptoCertificatekeypairsListError>> {
221 let local_var_configuration = configuration;
222
223 let local_var_client = &local_var_configuration.client;
224
225 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/", local_var_configuration.base_path);
226 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
227
228 if let Some(ref local_var_str) = has_key {
229 local_var_req_builder = local_var_req_builder.query(&[("has_key", &local_var_str.to_string())]);
230 }
231 if let Some(ref local_var_str) = include_details {
232 local_var_req_builder = local_var_req_builder.query(&[("include_details", &local_var_str.to_string())]);
233 }
234 if let Some(ref local_var_str) = managed {
235 local_var_req_builder = local_var_req_builder.query(&[("managed", &local_var_str.to_string())]);
236 }
237 if let Some(ref local_var_str) = name {
238 local_var_req_builder = local_var_req_builder.query(&[("name", &local_var_str.to_string())]);
239 }
240 if let Some(ref local_var_str) = ordering {
241 local_var_req_builder = local_var_req_builder.query(&[("ordering", &local_var_str.to_string())]);
242 }
243 if let Some(ref local_var_str) = page {
244 local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
245 }
246 if let Some(ref local_var_str) = page_size {
247 local_var_req_builder = local_var_req_builder.query(&[("page_size", &local_var_str.to_string())]);
248 }
249 if let Some(ref local_var_str) = search {
250 local_var_req_builder = local_var_req_builder.query(&[("search", &local_var_str.to_string())]);
251 }
252 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
253 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
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
264 let local_var_req = local_var_req_builder.build()?;
265 let local_var_resp = local_var_client.execute(local_var_req).await?;
266
267 let local_var_status = local_var_resp.status();
268 let local_var_content = local_var_resp.text().await?;
269
270 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
271 serde_json::from_str(&local_var_content).map_err(Error::from)
272 } else {
273 let local_var_entity: Option<CryptoCertificatekeypairsListError> = serde_json::from_str(&local_var_content).ok();
274 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
275 Err(Error::ResponseError(local_var_error))
276 }
277}
278
279pub async fn crypto_certificatekeypairs_partial_update(configuration: &configuration::Configuration, kp_uuid: &str, patched_certificate_key_pair_request: Option<models::PatchedCertificateKeyPairRequest>) -> Result<models::CertificateKeyPair, Error<CryptoCertificatekeypairsPartialUpdateError>> {
281 let local_var_configuration = configuration;
282
283 let local_var_client = &local_var_configuration.client;
284
285 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/{kp_uuid}/", local_var_configuration.base_path, kp_uuid=crate::apis::urlencode(kp_uuid));
286 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PATCH, local_var_uri_str.as_str());
287
288 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
289 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
290 }
291 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
292 let local_var_key = local_var_apikey.key.clone();
293 let local_var_value = match local_var_apikey.prefix {
294 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
295 None => local_var_key,
296 };
297 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
298 };
299 local_var_req_builder = local_var_req_builder.json(&patched_certificate_key_pair_request);
300
301 let local_var_req = local_var_req_builder.build()?;
302 let local_var_resp = local_var_client.execute(local_var_req).await?;
303
304 let local_var_status = local_var_resp.status();
305 let local_var_content = local_var_resp.text().await?;
306
307 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
308 serde_json::from_str(&local_var_content).map_err(Error::from)
309 } else {
310 let local_var_entity: Option<CryptoCertificatekeypairsPartialUpdateError> = serde_json::from_str(&local_var_content).ok();
311 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
312 Err(Error::ResponseError(local_var_error))
313 }
314}
315
316pub async fn crypto_certificatekeypairs_retrieve(configuration: &configuration::Configuration, kp_uuid: &str) -> Result<models::CertificateKeyPair, Error<CryptoCertificatekeypairsRetrieveError>> {
318 let local_var_configuration = configuration;
319
320 let local_var_client = &local_var_configuration.client;
321
322 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/{kp_uuid}/", local_var_configuration.base_path, kp_uuid=crate::apis::urlencode(kp_uuid));
323 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
324
325 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
326 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
327 }
328 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
329 let local_var_key = local_var_apikey.key.clone();
330 let local_var_value = match local_var_apikey.prefix {
331 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
332 None => local_var_key,
333 };
334 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
335 };
336
337 let local_var_req = local_var_req_builder.build()?;
338 let local_var_resp = local_var_client.execute(local_var_req).await?;
339
340 let local_var_status = local_var_resp.status();
341 let local_var_content = local_var_resp.text().await?;
342
343 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
344 serde_json::from_str(&local_var_content).map_err(Error::from)
345 } else {
346 let local_var_entity: Option<CryptoCertificatekeypairsRetrieveError> = serde_json::from_str(&local_var_content).ok();
347 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
348 Err(Error::ResponseError(local_var_error))
349 }
350}
351
352pub async fn crypto_certificatekeypairs_update(configuration: &configuration::Configuration, kp_uuid: &str, certificate_key_pair_request: models::CertificateKeyPairRequest) -> Result<models::CertificateKeyPair, Error<CryptoCertificatekeypairsUpdateError>> {
354 let local_var_configuration = configuration;
355
356 let local_var_client = &local_var_configuration.client;
357
358 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/{kp_uuid}/", local_var_configuration.base_path, kp_uuid=crate::apis::urlencode(kp_uuid));
359 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
360
361 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
362 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
363 }
364 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
365 let local_var_key = local_var_apikey.key.clone();
366 let local_var_value = match local_var_apikey.prefix {
367 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
368 None => local_var_key,
369 };
370 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
371 };
372 local_var_req_builder = local_var_req_builder.json(&certificate_key_pair_request);
373
374 let local_var_req = local_var_req_builder.build()?;
375 let local_var_resp = local_var_client.execute(local_var_req).await?;
376
377 let local_var_status = local_var_resp.status();
378 let local_var_content = local_var_resp.text().await?;
379
380 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
381 serde_json::from_str(&local_var_content).map_err(Error::from)
382 } else {
383 let local_var_entity: Option<CryptoCertificatekeypairsUpdateError> = serde_json::from_str(&local_var_content).ok();
384 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
385 Err(Error::ResponseError(local_var_error))
386 }
387}
388
389pub async fn crypto_certificatekeypairs_used_by_list(configuration: &configuration::Configuration, kp_uuid: &str) -> Result<Vec<models::UsedBy>, Error<CryptoCertificatekeypairsUsedByListError>> {
391 let local_var_configuration = configuration;
392
393 let local_var_client = &local_var_configuration.client;
394
395 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/{kp_uuid}/used_by/", local_var_configuration.base_path, kp_uuid=crate::apis::urlencode(kp_uuid));
396 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
397
398 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
399 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
400 }
401 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
402 let local_var_key = local_var_apikey.key.clone();
403 let local_var_value = match local_var_apikey.prefix {
404 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
405 None => local_var_key,
406 };
407 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
408 };
409
410 let local_var_req = local_var_req_builder.build()?;
411 let local_var_resp = local_var_client.execute(local_var_req).await?;
412
413 let local_var_status = local_var_resp.status();
414 let local_var_content = local_var_resp.text().await?;
415
416 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
417 serde_json::from_str(&local_var_content).map_err(Error::from)
418 } else {
419 let local_var_entity: Option<CryptoCertificatekeypairsUsedByListError> = serde_json::from_str(&local_var_content).ok();
420 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
421 Err(Error::ResponseError(local_var_error))
422 }
423}
424
425pub async fn crypto_certificatekeypairs_view_certificate_retrieve(configuration: &configuration::Configuration, kp_uuid: &str, download: Option<bool>) -> Result<models::CertificateData, Error<CryptoCertificatekeypairsViewCertificateRetrieveError>> {
427 let local_var_configuration = configuration;
428
429 let local_var_client = &local_var_configuration.client;
430
431 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/{kp_uuid}/view_certificate/", local_var_configuration.base_path, kp_uuid=crate::apis::urlencode(kp_uuid));
432 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
433
434 if let Some(ref local_var_str) = download {
435 local_var_req_builder = local_var_req_builder.query(&[("download", &local_var_str.to_string())]);
436 }
437 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
438 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
439 }
440 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
441 let local_var_key = local_var_apikey.key.clone();
442 let local_var_value = match local_var_apikey.prefix {
443 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
444 None => local_var_key,
445 };
446 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
447 };
448
449 let local_var_req = local_var_req_builder.build()?;
450 let local_var_resp = local_var_client.execute(local_var_req).await?;
451
452 let local_var_status = local_var_resp.status();
453 let local_var_content = local_var_resp.text().await?;
454
455 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
456 serde_json::from_str(&local_var_content).map_err(Error::from)
457 } else {
458 let local_var_entity: Option<CryptoCertificatekeypairsViewCertificateRetrieveError> = serde_json::from_str(&local_var_content).ok();
459 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
460 Err(Error::ResponseError(local_var_error))
461 }
462}
463
464pub async fn crypto_certificatekeypairs_view_private_key_retrieve(configuration: &configuration::Configuration, kp_uuid: &str, download: Option<bool>) -> Result<models::CertificateData, Error<CryptoCertificatekeypairsViewPrivateKeyRetrieveError>> {
466 let local_var_configuration = configuration;
467
468 let local_var_client = &local_var_configuration.client;
469
470 let local_var_uri_str = format!("{}/crypto/certificatekeypairs/{kp_uuid}/view_private_key/", local_var_configuration.base_path, kp_uuid=crate::apis::urlencode(kp_uuid));
471 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
472
473 if let Some(ref local_var_str) = download {
474 local_var_req_builder = local_var_req_builder.query(&[("download", &local_var_str.to_string())]);
475 }
476 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
477 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
478 }
479 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
480 let local_var_key = local_var_apikey.key.clone();
481 let local_var_value = match local_var_apikey.prefix {
482 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
483 None => local_var_key,
484 };
485 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
486 };
487
488 let local_var_req = local_var_req_builder.build()?;
489 let local_var_resp = local_var_client.execute(local_var_req).await?;
490
491 let local_var_status = local_var_resp.status();
492 let local_var_content = local_var_resp.text().await?;
493
494 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
495 serde_json::from_str(&local_var_content).map_err(Error::from)
496 } else {
497 let local_var_entity: Option<CryptoCertificatekeypairsViewPrivateKeyRetrieveError> = serde_json::from_str(&local_var_content).ok();
498 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
499 Err(Error::ResponseError(local_var_error))
500 }
501}
502