Skip to main content

clientapi_pve/models/
cluster_sdn_create_dns_request.rs

1/*
2 * Proxmox Virtual Environment API
3 *
4 * Generated from apidoc.js. NOT an official Proxmox specification. See https://pve.proxmox.com/pve-docs/api-viewer/ for the upstream documentation.
5 *
6 * The version of the OpenAPI document: 9.x
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ClusterSdnCreateDnsRequest {
16
17    /// The SDN dns object identifier.
18    #[serde(rename = "dns")]
19    pub dns: String,
20
21    /// Certificate SHA 256 fingerprint.
22    #[serde(rename = "fingerprint", skip_serializing_if = "Option::is_none")]
23    pub fingerprint: Option<String>,
24
25    #[serde(rename = "key")]
26    pub key: String,
27
28    /// the token for unlocking the global SDN configuration
29    #[serde(rename = "lock-token", skip_serializing_if = "Option::is_none")]
30    pub lock_token: Option<String>,
31
32    #[serde(rename = "reversemaskv6", skip_serializing_if = "Option::is_none")]
33    pub reversemaskv6: Option<i64>,
34
35    #[serde(rename = "reversev6mask", skip_serializing_if = "Option::is_none")]
36    pub reversev6mask: Option<i64>,
37
38    #[serde(rename = "ttl", skip_serializing_if = "Option::is_none")]
39    pub ttl: Option<i64>,
40
41    /// Plugin type.
42    #[serde(rename = "type")]
43    pub r#type: models::PveClusterSdnTypeTypeEnum,
44
45    #[serde(rename = "url")]
46    pub url: String,
47
48
49}
50
51impl ClusterSdnCreateDnsRequest {
52    pub fn new(dns: String, key: String, r#type: models::PveClusterSdnTypeTypeEnum, url: String) -> ClusterSdnCreateDnsRequest {
53        ClusterSdnCreateDnsRequest {
54            
55            dns,
56            
57            fingerprint: None,
58            
59            key,
60            
61            lock_token: None,
62            
63            reversemaskv6: None,
64            
65            reversev6mask: None,
66            
67            ttl: None,
68            
69            r#type,
70            
71            url,
72            
73        }
74    }
75}
76
77