Skip to main content

akeyless_api/models/
target_create_zero_ssl.rs

1/*
2 * Akeyless API
3 *
4 * The purpose of this application is to provide access to Akeyless API.
5 *
6 * The version of the OpenAPI document: 3.0
7 * Contact: support@akeyless.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// TargetCreateZeroSsl : targetCreateZeroSSL is a command that creates a new ZeroSSL target
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct TargetCreateZeroSsl {
17    /// API Key of the ZeroSSLTarget account
18    #[serde(rename = "api-key")]
19    pub api_key: String,
20    /// Description of the object
21    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
22    pub description: Option<String>,
23    /// ImapFQDN of the IMAP service, FQDN or IPv4 address. Must be FQDN if the IMAP is using TLS
24    #[serde(rename = "imap-fqdn")]
25    pub imap_fqdn: String,
26    /// ImapPassword to access the IMAP service
27    #[serde(rename = "imap-password")]
28    pub imap_password: String,
29    /// ImapPort of the IMAP service
30    #[serde(rename = "imap-port", skip_serializing_if = "Option::is_none")]
31    pub imap_port: Option<String>,
32    /// ImapValidationEmail to use when asking ZeroSSL to send a validation email, if empty will user imap-username
33    #[serde(rename = "imap-target-email", skip_serializing_if = "Option::is_none")]
34    pub imap_target_email: Option<String>,
35    /// ImapUsername to access the IMAP service
36    #[serde(rename = "imap-username")]
37    pub imap_username: String,
38    /// Set output format to JSON
39    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
40    pub json: Option<bool>,
41    /// The name of a key that used to encrypt the target secret value (if empty, the account default protectionKey key will be used)
42    #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
43    pub key: Option<String>,
44    /// Set the maximum number of versions, limited by the account settings defaults.
45    #[serde(rename = "max-versions", skip_serializing_if = "Option::is_none")]
46    pub max_versions: Option<String>,
47    /// Target name
48    #[serde(rename = "name")]
49    pub name: String,
50    /// Timeout waiting for certificate validation in Duration format (1h - 1 Hour, 20m - 20 Minutes, 33m3s - 33 Minutes and 3 Seconds), maximum 1h.
51    #[serde(rename = "timeout", skip_serializing_if = "Option::is_none")]
52    pub timeout: Option<String>,
53    /// Authentication token (see `/auth` and `/configure`)
54    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
55    pub token: Option<String>,
56    /// The universal identity token, Required only for universal_identity authentication
57    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
58    pub uid_token: Option<String>,
59}
60
61impl TargetCreateZeroSsl {
62    /// targetCreateZeroSSL is a command that creates a new ZeroSSL target
63    pub fn new(api_key: String, imap_fqdn: String, imap_password: String, imap_username: String, name: String) -> TargetCreateZeroSsl {
64        TargetCreateZeroSsl {
65            api_key,
66            description: None,
67            imap_fqdn,
68            imap_password,
69            imap_port: None,
70            imap_target_email: None,
71            imap_username,
72            json: None,
73            key: None,
74            max_versions: None,
75            name,
76            timeout: None,
77            token: None,
78            uid_token: None,
79        }
80    }
81}
82