Skip to main content

akeyless_api/models/
target_update_lets_encrypt.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/// TargetUpdateLetsEncrypt : targetUpdateLetsEncrypt is a command that updates an existing Let's Encrypt target
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct TargetUpdateLetsEncrypt {
17    #[serde(rename = "acme-challenge", skip_serializing_if = "Option::is_none")]
18    pub acme_challenge: Option<String>,
19    /// Description of the object
20    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
21    pub description: Option<String>,
22    /// Name of existing cloud target for DNS credentials. Required when acme-challenge=dns. Supported: AWS, Azure, GCP targets
23    #[serde(rename = "dns-target-creds", skip_serializing_if = "Option::is_none")]
24    pub dns_target_creds: Option<String>,
25    /// Email address for ACME account registration
26    #[serde(rename = "email", skip_serializing_if = "Option::is_none")]
27    pub email: Option<String>,
28    /// GCP Cloud DNS: Project ID. Optional - can be derived from service account
29    #[serde(rename = "gcp-project", skip_serializing_if = "Option::is_none")]
30    pub gcp_project: Option<String>,
31    /// AWS Route53 hosted zone ID. Required when dns-target-creds points to AWS target
32    #[serde(rename = "hosted-zone", skip_serializing_if = "Option::is_none")]
33    pub hosted_zone: Option<String>,
34    /// Set output format to JSON
35    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
36    pub json: Option<bool>,
37    /// Whether to keep previous version [true/false]. If not set, use default according to account settings
38    #[serde(rename = "keep-prev-version", skip_serializing_if = "Option::is_none")]
39    pub keep_prev_version: Option<String>,
40    /// The name of a key that used to encrypt the target secret value (if empty, the account default protectionKey key will be used)
41    #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
42    pub key: Option<String>,
43    #[serde(rename = "lets-encrypt-url", skip_serializing_if = "Option::is_none")]
44    pub lets_encrypt_url: Option<String>,
45    /// Set the maximum number of versions, limited by the account settings defaults.
46    #[serde(rename = "max-versions", skip_serializing_if = "Option::is_none")]
47    pub max_versions: Option<String>,
48    /// Target name
49    #[serde(rename = "name")]
50    pub name: String,
51    /// New target name
52    #[serde(rename = "new-name", skip_serializing_if = "Option::is_none")]
53    pub new_name: Option<String>,
54    /// Azure resource group name. Required when dns-target-creds points to Azure target
55    #[serde(rename = "resource-group", skip_serializing_if = "Option::is_none")]
56    pub resource_group: Option<String>,
57    #[serde(rename = "timeout", skip_serializing_if = "Option::is_none")]
58    pub timeout: Option<String>,
59    /// Authentication token (see `/auth` and `/configure`)
60    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
61    pub token: Option<String>,
62    /// The universal identity token, Required only for universal_identity authentication
63    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
64    pub uid_token: Option<String>,
65}
66
67impl TargetUpdateLetsEncrypt {
68    /// targetUpdateLetsEncrypt is a command that updates an existing Let's Encrypt target
69    pub fn new(name: String) -> TargetUpdateLetsEncrypt {
70        TargetUpdateLetsEncrypt {
71            acme_challenge: None,
72            description: None,
73            dns_target_creds: None,
74            email: None,
75            gcp_project: None,
76            hosted_zone: None,
77            json: None,
78            keep_prev_version: None,
79            key: None,
80            lets_encrypt_url: None,
81            max_versions: None,
82            name,
83            new_name: None,
84            resource_group: None,
85            timeout: None,
86            token: None,
87            uid_token: None,
88        }
89    }
90}
91