proxmox_api/generated/cluster/acme/plugins/
id.rs

1pub struct IdClient<T> {
2    client: T,
3    path: String,
4}
5impl<T> IdClient<T>
6where
7    T: crate::client::Client,
8{
9    pub fn new(client: T, parent_path: &str, id: &str) -> Self {
10        Self {
11            client,
12            path: format!("{}/{}", parent_path, id),
13        }
14    }
15}
16impl<T> IdClient<T>
17where
18    T: crate::client::Client,
19{
20    #[doc = "Delete ACME plugin configuration."]
21    pub fn delete(&self) -> Result<(), T::Error> {
22        let path = self.path.to_string();
23        self.client.delete(&path, &())
24    }
25}
26impl<T> IdClient<T>
27where
28    T: crate::client::Client,
29{
30    #[doc = "Get ACME plugin configuration."]
31    pub fn get(&self) -> Result<GetOutput, T::Error> {
32        let path = self.path.to_string();
33        self.client.get(&path, &())
34    }
35}
36impl<T> IdClient<T>
37where
38    T: crate::client::Client,
39{
40    #[doc = "Update ACME plugin configuration."]
41    pub fn put(&self, params: PutParams) -> Result<(), T::Error> {
42        let path = self.path.to_string();
43        self.client.put(&path, &params)
44    }
45}
46#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize, Default)]
47pub struct GetOutput {
48    #[serde(
49        flatten,
50        default,
51        skip_serializing_if = "::std::collections::HashMap::is_empty"
52    )]
53    pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
54}
55#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize, Default)]
56pub struct PutParams {
57    #[serde(skip_serializing_if = "Option::is_none", default)]
58    #[doc = "API plugin name"]
59    pub api: Option<Api>,
60    #[serde(skip_serializing_if = "Option::is_none", default)]
61    #[doc = "DNS plugin data. (base64 encoded)"]
62    pub data: Option<String>,
63    #[serde(skip_serializing_if = "Option::is_none", default)]
64    #[doc = "A list of settings you want to delete."]
65    pub delete: Option<String>,
66    #[serde(skip_serializing_if = "Option::is_none", default)]
67    #[doc = "Prevent changes if current configuration file has a different digest. This can be used to prevent concurrent modifications."]
68    pub digest: Option<String>,
69    #[serde(
70        serialize_with = "crate::types::serialize_bool_optional",
71        deserialize_with = "crate::types::deserialize_bool_optional"
72    )]
73    #[serde(skip_serializing_if = "Option::is_none", default)]
74    #[doc = "Flag to disable the config."]
75    pub disable: Option<bool>,
76    #[serde(skip_serializing_if = "Option::is_none", default)]
77    #[doc = "List of cluster node names."]
78    pub nodes: Option<String>,
79    #[serde(rename = "validation-delay")]
80    #[serde(
81        serialize_with = "crate::types::serialize_int_optional",
82        deserialize_with = "crate::types::deserialize_int_optional"
83    )]
84    #[serde(skip_serializing_if = "Option::is_none", default)]
85    #[doc = "Extra delay in seconds to wait before requesting validation. Allows to cope with a long TTL of DNS records."]
86    pub validation_delay: Option<u64>,
87    #[serde(
88        flatten,
89        default,
90        skip_serializing_if = "::std::collections::HashMap::is_empty"
91    )]
92    pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
93}
94#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize)]
95pub enum Api {
96    #[serde(rename = "1984hosting")]
97    _1984hosting,
98    #[serde(rename = "acmedns")]
99    Acmedns,
100    #[serde(rename = "acmeproxy")]
101    Acmeproxy,
102    #[serde(rename = "active24")]
103    Active24,
104    #[serde(rename = "ad")]
105    Ad,
106    #[serde(rename = "ali")]
107    Ali,
108    #[serde(rename = "anx")]
109    Anx,
110    #[serde(rename = "artfiles")]
111    Artfiles,
112    #[serde(rename = "arvan")]
113    Arvan,
114    #[serde(rename = "aurora")]
115    Aurora,
116    #[serde(rename = "autodns")]
117    Autodns,
118    #[serde(rename = "aws")]
119    Aws,
120    #[serde(rename = "azion")]
121    Azion,
122    #[serde(rename = "azure")]
123    Azure,
124    #[serde(rename = "bookmyname")]
125    Bookmyname,
126    #[serde(rename = "bunny")]
127    Bunny,
128    #[serde(rename = "cf")]
129    Cf,
130    #[serde(rename = "clouddns")]
131    Clouddns,
132    #[serde(rename = "cloudns")]
133    Cloudns,
134    #[serde(rename = "cn")]
135    Cn,
136    #[serde(rename = "conoha")]
137    Conoha,
138    #[serde(rename = "constellix")]
139    Constellix,
140    #[serde(rename = "cpanel")]
141    Cpanel,
142    #[serde(rename = "curanet")]
143    Curanet,
144    #[serde(rename = "cyon")]
145    Cyon,
146    #[serde(rename = "da")]
147    Da,
148    #[serde(rename = "ddnss")]
149    Ddnss,
150    #[serde(rename = "desec")]
151    Desec,
152    #[serde(rename = "df")]
153    Df,
154    #[serde(rename = "dgon")]
155    Dgon,
156    #[serde(rename = "dnsexit")]
157    Dnsexit,
158    #[serde(rename = "dnshome")]
159    Dnshome,
160    #[serde(rename = "dnsimple")]
161    Dnsimple,
162    #[serde(rename = "dnsservices")]
163    Dnsservices,
164    #[serde(rename = "do")]
165    Do,
166    #[serde(rename = "doapi")]
167    Doapi,
168    #[serde(rename = "domeneshop")]
169    Domeneshop,
170    #[serde(rename = "dp")]
171    Dp,
172    #[serde(rename = "dpi")]
173    Dpi,
174    #[serde(rename = "dreamhost")]
175    Dreamhost,
176    #[serde(rename = "duckdns")]
177    Duckdns,
178    #[serde(rename = "durabledns")]
179    Durabledns,
180    #[serde(rename = "dyn")]
181    Dyn,
182    #[serde(rename = "dynu")]
183    Dynu,
184    #[serde(rename = "dynv6")]
185    Dynv6,
186    #[serde(rename = "easydns")]
187    Easydns,
188    #[serde(rename = "edgedns")]
189    Edgedns,
190    #[serde(rename = "euserv")]
191    Euserv,
192    #[serde(rename = "exoscale")]
193    Exoscale,
194    #[serde(rename = "fornex")]
195    Fornex,
196    #[serde(rename = "freedns")]
197    Freedns,
198    #[serde(rename = "gandi_livedns")]
199    GandiLivedns,
200    #[serde(rename = "gcloud")]
201    Gcloud,
202    #[serde(rename = "gcore")]
203    Gcore,
204    #[serde(rename = "gd")]
205    Gd,
206    #[serde(rename = "geoscaling")]
207    Geoscaling,
208    #[serde(rename = "googledomains")]
209    Googledomains,
210    #[serde(rename = "he")]
211    He,
212    #[serde(rename = "hetzner")]
213    Hetzner,
214    #[serde(rename = "hexonet")]
215    Hexonet,
216    #[serde(rename = "hostingde")]
217    Hostingde,
218    #[serde(rename = "huaweicloud")]
219    Huaweicloud,
220    #[serde(rename = "infoblox")]
221    Infoblox,
222    #[serde(rename = "infomaniak")]
223    Infomaniak,
224    #[serde(rename = "internetbs")]
225    Internetbs,
226    #[serde(rename = "inwx")]
227    Inwx,
228    #[serde(rename = "ionos")]
229    Ionos,
230    #[serde(rename = "ipv64")]
231    Ipv64,
232    #[serde(rename = "ispconfig")]
233    Ispconfig,
234    #[serde(rename = "jd")]
235    Jd,
236    #[serde(rename = "joker")]
237    Joker,
238    #[serde(rename = "kappernet")]
239    Kappernet,
240    #[serde(rename = "kas")]
241    Kas,
242    #[serde(rename = "kinghost")]
243    Kinghost,
244    #[serde(rename = "knot")]
245    Knot,
246    #[serde(rename = "la")]
247    La,
248    #[serde(rename = "leaseweb")]
249    Leaseweb,
250    #[serde(rename = "lexicon")]
251    Lexicon,
252    #[serde(rename = "linode")]
253    Linode,
254    #[serde(rename = "linode_v4")]
255    LinodeV4,
256    #[serde(rename = "loopia")]
257    Loopia,
258    #[serde(rename = "lua")]
259    Lua,
260    #[serde(rename = "maradns")]
261    Maradns,
262    #[serde(rename = "me")]
263    Me,
264    #[serde(rename = "miab")]
265    Miab,
266    #[serde(rename = "misaka")]
267    Misaka,
268    #[serde(rename = "myapi")]
269    Myapi,
270    #[serde(rename = "mydevil")]
271    Mydevil,
272    #[serde(rename = "mydnsjp")]
273    Mydnsjp,
274    #[serde(rename = "mythic_beasts")]
275    MythicBeasts,
276    #[serde(rename = "namecheap")]
277    Namecheap,
278    #[serde(rename = "namecom")]
279    Namecom,
280    #[serde(rename = "namesilo")]
281    Namesilo,
282    #[serde(rename = "nanelo")]
283    Nanelo,
284    #[serde(rename = "nederhost")]
285    Nederhost,
286    #[serde(rename = "neodigit")]
287    Neodigit,
288    #[serde(rename = "netcup")]
289    Netcup,
290    #[serde(rename = "netlify")]
291    Netlify,
292    #[serde(rename = "nic")]
293    Nic,
294    #[serde(rename = "njalla")]
295    Njalla,
296    #[serde(rename = "nm")]
297    Nm,
298    #[serde(rename = "nsd")]
299    Nsd,
300    #[serde(rename = "nsone")]
301    Nsone,
302    #[serde(rename = "nsupdate")]
303    Nsupdate,
304    #[serde(rename = "nw")]
305    Nw,
306    #[serde(rename = "oci")]
307    Oci,
308    #[serde(rename = "one")]
309    One,
310    #[serde(rename = "online")]
311    Online,
312    #[serde(rename = "openprovider")]
313    Openprovider,
314    #[serde(rename = "openstack")]
315    Openstack,
316    #[serde(rename = "opnsense")]
317    Opnsense,
318    #[serde(rename = "ovh")]
319    Ovh,
320    #[serde(rename = "pdns")]
321    Pdns,
322    #[serde(rename = "pleskxml")]
323    Pleskxml,
324    #[serde(rename = "pointhq")]
325    Pointhq,
326    #[serde(rename = "porkbun")]
327    Porkbun,
328    #[serde(rename = "rackcorp")]
329    Rackcorp,
330    #[serde(rename = "rackspace")]
331    Rackspace,
332    #[serde(rename = "rage4")]
333    Rage4,
334    #[serde(rename = "rcode0")]
335    Rcode0,
336    #[serde(rename = "regru")]
337    Regru,
338    #[serde(rename = "scaleway")]
339    Scaleway,
340    #[serde(rename = "schlundtech")]
341    Schlundtech,
342    #[serde(rename = "selectel")]
343    Selectel,
344    #[serde(rename = "selfhost")]
345    Selfhost,
346    #[serde(rename = "servercow")]
347    Servercow,
348    #[serde(rename = "simply")]
349    Simply,
350    #[serde(rename = "tele3")]
351    Tele3,
352    #[serde(rename = "tencent")]
353    Tencent,
354    #[serde(rename = "transip")]
355    Transip,
356    #[serde(rename = "udr")]
357    Udr,
358    #[serde(rename = "ultra")]
359    Ultra,
360    #[serde(rename = "unoeuro")]
361    Unoeuro,
362    #[serde(rename = "variomedia")]
363    Variomedia,
364    #[serde(rename = "veesp")]
365    Veesp,
366    #[serde(rename = "vercel")]
367    Vercel,
368    #[serde(rename = "vscale")]
369    Vscale,
370    #[serde(rename = "vultr")]
371    Vultr,
372    #[serde(rename = "websupport")]
373    Websupport,
374    #[serde(rename = "world4you")]
375    World4you,
376    #[serde(rename = "yandex")]
377    Yandex,
378    #[serde(rename = "yc")]
379    Yc,
380    #[serde(rename = "zilore")]
381    Zilore,
382    #[serde(rename = "zone")]
383    Zone,
384    #[serde(rename = "zonomi")]
385    Zonomi,
386}