proxmox_api/generated/access/roles/
roleid.rs

1pub struct RoleidClient<T> {
2    client: T,
3    path: String,
4}
5impl<T> RoleidClient<T>
6where
7    T: crate::client::Client,
8{
9    pub fn new(client: T, parent_path: &str, roleid: &str) -> Self {
10        Self {
11            client,
12            path: format!("{}/{}", parent_path, roleid),
13        }
14    }
15}
16impl<T> RoleidClient<T>
17where
18    T: crate::client::Client,
19{
20    #[doc = "Delete role."]
21    pub fn delete(&self) -> Result<(), T::Error> {
22        let path = self.path.to_string();
23        self.client.delete(&path, &())
24    }
25}
26impl<T> RoleidClient<T>
27where
28    T: crate::client::Client,
29{
30    #[doc = "Get role 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> RoleidClient<T>
37where
38    T: crate::client::Client,
39{
40    #[doc = "Update an existing role."]
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(rename = "Datastore.Allocate")]
49    #[serde(
50        serialize_with = "crate::types::serialize_bool_optional",
51        deserialize_with = "crate::types::deserialize_bool_optional"
52    )]
53    #[serde(skip_serializing_if = "Option::is_none", default)]
54    pub datastore_allocate: Option<bool>,
55    #[serde(rename = "Datastore.AllocateSpace")]
56    #[serde(
57        serialize_with = "crate::types::serialize_bool_optional",
58        deserialize_with = "crate::types::deserialize_bool_optional"
59    )]
60    #[serde(skip_serializing_if = "Option::is_none", default)]
61    pub datastore_allocatespace: Option<bool>,
62    #[serde(rename = "Datastore.AllocateTemplate")]
63    #[serde(
64        serialize_with = "crate::types::serialize_bool_optional",
65        deserialize_with = "crate::types::deserialize_bool_optional"
66    )]
67    #[serde(skip_serializing_if = "Option::is_none", default)]
68    pub datastore_allocatetemplate: Option<bool>,
69    #[serde(rename = "Datastore.Audit")]
70    #[serde(
71        serialize_with = "crate::types::serialize_bool_optional",
72        deserialize_with = "crate::types::deserialize_bool_optional"
73    )]
74    #[serde(skip_serializing_if = "Option::is_none", default)]
75    pub datastore_audit: Option<bool>,
76    #[serde(rename = "Group.Allocate")]
77    #[serde(
78        serialize_with = "crate::types::serialize_bool_optional",
79        deserialize_with = "crate::types::deserialize_bool_optional"
80    )]
81    #[serde(skip_serializing_if = "Option::is_none", default)]
82    pub group_allocate: Option<bool>,
83    #[serde(rename = "Mapping.Audit")]
84    #[serde(
85        serialize_with = "crate::types::serialize_bool_optional",
86        deserialize_with = "crate::types::deserialize_bool_optional"
87    )]
88    #[serde(skip_serializing_if = "Option::is_none", default)]
89    pub mapping_audit: Option<bool>,
90    #[serde(rename = "Mapping.Modify")]
91    #[serde(
92        serialize_with = "crate::types::serialize_bool_optional",
93        deserialize_with = "crate::types::deserialize_bool_optional"
94    )]
95    #[serde(skip_serializing_if = "Option::is_none", default)]
96    pub mapping_modify: Option<bool>,
97    #[serde(rename = "Mapping.Use")]
98    #[serde(
99        serialize_with = "crate::types::serialize_bool_optional",
100        deserialize_with = "crate::types::deserialize_bool_optional"
101    )]
102    #[serde(skip_serializing_if = "Option::is_none", default)]
103    pub mapping_use: Option<bool>,
104    #[serde(rename = "Permissions.Modify")]
105    #[serde(
106        serialize_with = "crate::types::serialize_bool_optional",
107        deserialize_with = "crate::types::deserialize_bool_optional"
108    )]
109    #[serde(skip_serializing_if = "Option::is_none", default)]
110    pub permissions_modify: Option<bool>,
111    #[serde(rename = "Pool.Allocate")]
112    #[serde(
113        serialize_with = "crate::types::serialize_bool_optional",
114        deserialize_with = "crate::types::deserialize_bool_optional"
115    )]
116    #[serde(skip_serializing_if = "Option::is_none", default)]
117    pub pool_allocate: Option<bool>,
118    #[serde(rename = "Pool.Audit")]
119    #[serde(
120        serialize_with = "crate::types::serialize_bool_optional",
121        deserialize_with = "crate::types::deserialize_bool_optional"
122    )]
123    #[serde(skip_serializing_if = "Option::is_none", default)]
124    pub pool_audit: Option<bool>,
125    #[serde(rename = "Realm.Allocate")]
126    #[serde(
127        serialize_with = "crate::types::serialize_bool_optional",
128        deserialize_with = "crate::types::deserialize_bool_optional"
129    )]
130    #[serde(skip_serializing_if = "Option::is_none", default)]
131    pub realm_allocate: Option<bool>,
132    #[serde(rename = "Realm.AllocateUser")]
133    #[serde(
134        serialize_with = "crate::types::serialize_bool_optional",
135        deserialize_with = "crate::types::deserialize_bool_optional"
136    )]
137    #[serde(skip_serializing_if = "Option::is_none", default)]
138    pub realm_allocateuser: Option<bool>,
139    #[serde(rename = "SDN.Allocate")]
140    #[serde(
141        serialize_with = "crate::types::serialize_bool_optional",
142        deserialize_with = "crate::types::deserialize_bool_optional"
143    )]
144    #[serde(skip_serializing_if = "Option::is_none", default)]
145    pub sdn_allocate: Option<bool>,
146    #[serde(rename = "SDN.Audit")]
147    #[serde(
148        serialize_with = "crate::types::serialize_bool_optional",
149        deserialize_with = "crate::types::deserialize_bool_optional"
150    )]
151    #[serde(skip_serializing_if = "Option::is_none", default)]
152    pub sdn_audit: Option<bool>,
153    #[serde(rename = "SDN.Use")]
154    #[serde(
155        serialize_with = "crate::types::serialize_bool_optional",
156        deserialize_with = "crate::types::deserialize_bool_optional"
157    )]
158    #[serde(skip_serializing_if = "Option::is_none", default)]
159    pub sdn_use: Option<bool>,
160    #[serde(rename = "Sys.AccessNetwork")]
161    #[serde(
162        serialize_with = "crate::types::serialize_bool_optional",
163        deserialize_with = "crate::types::deserialize_bool_optional"
164    )]
165    #[serde(skip_serializing_if = "Option::is_none", default)]
166    pub sys_accessnetwork: Option<bool>,
167    #[serde(rename = "Sys.Audit")]
168    #[serde(
169        serialize_with = "crate::types::serialize_bool_optional",
170        deserialize_with = "crate::types::deserialize_bool_optional"
171    )]
172    #[serde(skip_serializing_if = "Option::is_none", default)]
173    pub sys_audit: Option<bool>,
174    #[serde(rename = "Sys.Console")]
175    #[serde(
176        serialize_with = "crate::types::serialize_bool_optional",
177        deserialize_with = "crate::types::deserialize_bool_optional"
178    )]
179    #[serde(skip_serializing_if = "Option::is_none", default)]
180    pub sys_console: Option<bool>,
181    #[serde(rename = "Sys.Incoming")]
182    #[serde(
183        serialize_with = "crate::types::serialize_bool_optional",
184        deserialize_with = "crate::types::deserialize_bool_optional"
185    )]
186    #[serde(skip_serializing_if = "Option::is_none", default)]
187    pub sys_incoming: Option<bool>,
188    #[serde(rename = "Sys.Modify")]
189    #[serde(
190        serialize_with = "crate::types::serialize_bool_optional",
191        deserialize_with = "crate::types::deserialize_bool_optional"
192    )]
193    #[serde(skip_serializing_if = "Option::is_none", default)]
194    pub sys_modify: Option<bool>,
195    #[serde(rename = "Sys.PowerMgmt")]
196    #[serde(
197        serialize_with = "crate::types::serialize_bool_optional",
198        deserialize_with = "crate::types::deserialize_bool_optional"
199    )]
200    #[serde(skip_serializing_if = "Option::is_none", default)]
201    pub sys_powermgmt: Option<bool>,
202    #[serde(rename = "Sys.Syslog")]
203    #[serde(
204        serialize_with = "crate::types::serialize_bool_optional",
205        deserialize_with = "crate::types::deserialize_bool_optional"
206    )]
207    #[serde(skip_serializing_if = "Option::is_none", default)]
208    pub sys_syslog: Option<bool>,
209    #[serde(rename = "User.Modify")]
210    #[serde(
211        serialize_with = "crate::types::serialize_bool_optional",
212        deserialize_with = "crate::types::deserialize_bool_optional"
213    )]
214    #[serde(skip_serializing_if = "Option::is_none", default)]
215    pub user_modify: Option<bool>,
216    #[serde(rename = "VM.Allocate")]
217    #[serde(
218        serialize_with = "crate::types::serialize_bool_optional",
219        deserialize_with = "crate::types::deserialize_bool_optional"
220    )]
221    #[serde(skip_serializing_if = "Option::is_none", default)]
222    pub vm_allocate: Option<bool>,
223    #[serde(rename = "VM.Audit")]
224    #[serde(
225        serialize_with = "crate::types::serialize_bool_optional",
226        deserialize_with = "crate::types::deserialize_bool_optional"
227    )]
228    #[serde(skip_serializing_if = "Option::is_none", default)]
229    pub vm_audit: Option<bool>,
230    #[serde(rename = "VM.Backup")]
231    #[serde(
232        serialize_with = "crate::types::serialize_bool_optional",
233        deserialize_with = "crate::types::deserialize_bool_optional"
234    )]
235    #[serde(skip_serializing_if = "Option::is_none", default)]
236    pub vm_backup: Option<bool>,
237    #[serde(rename = "VM.Clone")]
238    #[serde(
239        serialize_with = "crate::types::serialize_bool_optional",
240        deserialize_with = "crate::types::deserialize_bool_optional"
241    )]
242    #[serde(skip_serializing_if = "Option::is_none", default)]
243    pub vm_clone: Option<bool>,
244    #[serde(rename = "VM.Config.CDROM")]
245    #[serde(
246        serialize_with = "crate::types::serialize_bool_optional",
247        deserialize_with = "crate::types::deserialize_bool_optional"
248    )]
249    #[serde(skip_serializing_if = "Option::is_none", default)]
250    pub vm_config_cdrom: Option<bool>,
251    #[serde(rename = "VM.Config.CPU")]
252    #[serde(
253        serialize_with = "crate::types::serialize_bool_optional",
254        deserialize_with = "crate::types::deserialize_bool_optional"
255    )]
256    #[serde(skip_serializing_if = "Option::is_none", default)]
257    pub vm_config_cpu: Option<bool>,
258    #[serde(rename = "VM.Config.Cloudinit")]
259    #[serde(
260        serialize_with = "crate::types::serialize_bool_optional",
261        deserialize_with = "crate::types::deserialize_bool_optional"
262    )]
263    #[serde(skip_serializing_if = "Option::is_none", default)]
264    pub vm_config_cloudinit: Option<bool>,
265    #[serde(rename = "VM.Config.Disk")]
266    #[serde(
267        serialize_with = "crate::types::serialize_bool_optional",
268        deserialize_with = "crate::types::deserialize_bool_optional"
269    )]
270    #[serde(skip_serializing_if = "Option::is_none", default)]
271    pub vm_config_disk: Option<bool>,
272    #[serde(rename = "VM.Config.HWType")]
273    #[serde(
274        serialize_with = "crate::types::serialize_bool_optional",
275        deserialize_with = "crate::types::deserialize_bool_optional"
276    )]
277    #[serde(skip_serializing_if = "Option::is_none", default)]
278    pub vm_config_hwtype: Option<bool>,
279    #[serde(rename = "VM.Config.Memory")]
280    #[serde(
281        serialize_with = "crate::types::serialize_bool_optional",
282        deserialize_with = "crate::types::deserialize_bool_optional"
283    )]
284    #[serde(skip_serializing_if = "Option::is_none", default)]
285    pub vm_config_memory: Option<bool>,
286    #[serde(rename = "VM.Config.Network")]
287    #[serde(
288        serialize_with = "crate::types::serialize_bool_optional",
289        deserialize_with = "crate::types::deserialize_bool_optional"
290    )]
291    #[serde(skip_serializing_if = "Option::is_none", default)]
292    pub vm_config_network: Option<bool>,
293    #[serde(rename = "VM.Config.Options")]
294    #[serde(
295        serialize_with = "crate::types::serialize_bool_optional",
296        deserialize_with = "crate::types::deserialize_bool_optional"
297    )]
298    #[serde(skip_serializing_if = "Option::is_none", default)]
299    pub vm_config_options: Option<bool>,
300    #[serde(rename = "VM.Console")]
301    #[serde(
302        serialize_with = "crate::types::serialize_bool_optional",
303        deserialize_with = "crate::types::deserialize_bool_optional"
304    )]
305    #[serde(skip_serializing_if = "Option::is_none", default)]
306    pub vm_console: Option<bool>,
307    #[serde(rename = "VM.Migrate")]
308    #[serde(
309        serialize_with = "crate::types::serialize_bool_optional",
310        deserialize_with = "crate::types::deserialize_bool_optional"
311    )]
312    #[serde(skip_serializing_if = "Option::is_none", default)]
313    pub vm_migrate: Option<bool>,
314    #[serde(rename = "VM.Monitor")]
315    #[serde(
316        serialize_with = "crate::types::serialize_bool_optional",
317        deserialize_with = "crate::types::deserialize_bool_optional"
318    )]
319    #[serde(skip_serializing_if = "Option::is_none", default)]
320    pub vm_monitor: Option<bool>,
321    #[serde(rename = "VM.PowerMgmt")]
322    #[serde(
323        serialize_with = "crate::types::serialize_bool_optional",
324        deserialize_with = "crate::types::deserialize_bool_optional"
325    )]
326    #[serde(skip_serializing_if = "Option::is_none", default)]
327    pub vm_powermgmt: Option<bool>,
328    #[serde(rename = "VM.Snapshot")]
329    #[serde(
330        serialize_with = "crate::types::serialize_bool_optional",
331        deserialize_with = "crate::types::deserialize_bool_optional"
332    )]
333    #[serde(skip_serializing_if = "Option::is_none", default)]
334    pub vm_snapshot: Option<bool>,
335    #[serde(rename = "VM.Snapshot.Rollback")]
336    #[serde(
337        serialize_with = "crate::types::serialize_bool_optional",
338        deserialize_with = "crate::types::deserialize_bool_optional"
339    )]
340    #[serde(skip_serializing_if = "Option::is_none", default)]
341    pub vm_snapshot_rollback: Option<bool>,
342}
343#[derive(Clone, Debug, :: serde :: Serialize, :: serde :: Deserialize, Default)]
344pub struct PutParams {
345    #[serde(
346        serialize_with = "crate::types::serialize_bool_optional",
347        deserialize_with = "crate::types::deserialize_bool_optional"
348    )]
349    #[serde(skip_serializing_if = "Option::is_none", default)]
350    pub append: Option<bool>,
351    #[serde(skip_serializing_if = "Option::is_none", default)]
352    pub privs: Option<String>,
353    #[serde(
354        flatten,
355        default,
356        skip_serializing_if = "::std::collections::HashMap::is_empty"
357    )]
358    pub additional_properties: ::std::collections::HashMap<String, ::serde_json::Value>,
359}