Skip to main content

netbox_openapi/models/
dcim_power_port_templates_create_request.rs

1/*
2 * NetBox REST API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 4.6.2 (4.6)
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
12pub struct DcimPowerPortTemplatesCreateRequest {
13    #[serde(
14        rename = "device_type",
15        default,
16        with = "::serde_with::rust::double_option",
17        skip_serializing_if = "Option::is_none"
18    )]
19    pub device_type: Option<Option<Box<crate::models::ConsolePortTemplateRequestDeviceType>>>,
20    #[serde(
21        rename = "module_type",
22        default,
23        with = "::serde_with::rust::double_option",
24        skip_serializing_if = "Option::is_none"
25    )]
26    pub module_type: Option<Option<Box<crate::models::ConsolePortTemplateRequestModuleType>>>,
27    /// {module} is accepted as a substitution for the module bay position when attached to a module type.
28    #[serde(rename = "name")]
29    pub name: String,
30    /// Physical label
31    #[serde(rename = "label", skip_serializing_if = "Option::is_none")]
32    pub label: Option<String>,
33    /// * `iec-60320-c6` - C6 * `iec-60320-c8` - C8 * `iec-60320-c14` - C14 * `iec-60320-c16` - C16 * `iec-60320-c18` - C18 * `iec-60320-c20` - C20 * `iec-60320-c22` - C22 * `iec-60309-p-n-e-4h` - P+N+E 4H * `iec-60309-p-n-e-6h` - P+N+E 6H * `iec-60309-p-n-e-9h` - P+N+E 9H * `iec-60309-2p-e-4h` - 2P+E 4H * `iec-60309-2p-e-6h` - 2P+E 6H * `iec-60309-2p-e-9h` - 2P+E 9H * `iec-60309-3p-e-4h` - 3P+E 4H * `iec-60309-3p-e-6h` - 3P+E 6H * `iec-60309-3p-e-9h` - 3P+E 9H * `iec-60309-3p-n-e-4h` - 3P+N+E 4H * `iec-60309-3p-n-e-6h` - 3P+N+E 6H * `iec-60309-3p-n-e-9h` - 3P+N+E 9H * `iec-60906-1` - IEC 60906-1 * `nbr-14136-10a` - 2P+T 10A (NBR 14136) * `nbr-14136-20a` - 2P+T 20A (NBR 14136) * `nema-1-15p` - NEMA 1-15P * `nema-5-15p` - NEMA 5-15P * `nema-5-20p` - NEMA 5-20P * `nema-5-30p` - NEMA 5-30P * `nema-5-50p` - NEMA 5-50P * `nema-6-15p` - NEMA 6-15P * `nema-6-20p` - NEMA 6-20P * `nema-6-30p` - NEMA 6-30P * `nema-6-50p` - NEMA 6-50P * `nema-10-30p` - NEMA 10-30P * `nema-10-50p` - NEMA 10-50P * `nema-14-20p` - NEMA 14-20P * `nema-14-30p` - NEMA 14-30P * `nema-14-50p` - NEMA 14-50P * `nema-14-60p` - NEMA 14-60P * `nema-15-15p` - NEMA 15-15P * `nema-15-20p` - NEMA 15-20P * `nema-15-30p` - NEMA 15-30P * `nema-15-50p` - NEMA 15-50P * `nema-15-60p` - NEMA 15-60P * `nema-l1-15p` - NEMA L1-15P * `nema-l5-15p` - NEMA L5-15P * `nema-l5-20p` - NEMA L5-20P * `nema-l5-30p` - NEMA L5-30P * `nema-l5-50p` - NEMA L5-50P * `nema-l6-15p` - NEMA L6-15P * `nema-l6-20p` - NEMA L6-20P * `nema-l6-30p` - NEMA L6-30P * `nema-l6-50p` - NEMA L6-50P * `nema-l10-30p` - NEMA L10-30P * `nema-l14-20p` - NEMA L14-20P * `nema-l14-30p` - NEMA L14-30P * `nema-l14-50p` - NEMA L14-50P * `nema-l14-60p` - NEMA L14-60P * `nema-l15-20p` - NEMA L15-20P * `nema-l15-30p` - NEMA L15-30P * `nema-l15-50p` - NEMA L15-50P * `nema-l15-60p` - NEMA L15-60P * `nema-l21-20p` - NEMA L21-20P * `nema-l21-30p` - NEMA L21-30P * `nema-l22-20p` - NEMA L22-20P * `nema-l22-30p` - NEMA L22-30P * `cs6361c` - CS6361C * `cs6365c` - CS6365C * `cs8165c` - CS8165C * `cs8265c` - CS8265C * `cs8365c` - CS8365C * `cs8465c` - CS8465C * `ita-c` - ITA Type C (CEE 7/16) * `ita-e` - ITA Type E (CEE 7/6) * `ita-f` - ITA Type F (CEE 7/4) * `ita-ef` - ITA Type E/F (CEE 7/7) * `ita-g` - ITA Type G (BS 1363) * `ita-h` - ITA Type H * `ita-i` - ITA Type I * `ita-j` - ITA Type J * `ita-k` - ITA Type K * `ita-l` - ITA Type L (CEI 23-50) * `ita-m` - ITA Type M (BS 546) * `ita-n` - ITA Type N * `ita-o` - ITA Type O * `usb-a` - USB Type A * `usb-b` - USB Type B * `usb-c` - USB Type C * `usb-mini-a` - USB Mini A * `usb-mini-b` - USB Mini B * `usb-micro-a` - USB Micro A * `usb-micro-b` - USB Micro B * `usb-micro-ab` - USB Micro AB * `usb-3-b` - USB 3.0 Type B * `usb-3-micro-b` - USB 3.0 Micro B * `molex-micro-fit-1x2` - Molex Micro-Fit 1x2 * `molex-micro-fit-2x2` - Molex Micro-Fit 2x2 * `molex-micro-fit-2x3` - Molex Micro-Fit 2x3 * `molex-micro-fit-2x4` - Molex Micro-Fit 2x4 * `dc-terminal` - DC Terminal * `saf-d-grid` - Saf-D-Grid * `neutrik-powercon-20` - Neutrik powerCON (20A) * `neutrik-powercon-32` - Neutrik powerCON (32A) * `neutrik-powercon-true1` - Neutrik powerCON TRUE1 * `neutrik-powercon-true1-top` - Neutrik powerCON TRUE1 TOP * `ubiquiti-smartpower` - Ubiquiti SmartPower * `hardwired` - Hardwired * `other` - Other
34    #[serde(
35        rename = "type",
36        default,
37        with = "::serde_with::rust::double_option",
38        skip_serializing_if = "Option::is_none"
39    )]
40    pub r#type: Option<Option<RHashType>>,
41    /// Maximum power draw (watts)
42    #[serde(
43        rename = "maximum_draw",
44        default,
45        with = "::serde_with::rust::double_option",
46        skip_serializing_if = "Option::is_none"
47    )]
48    pub maximum_draw: Option<Option<i32>>,
49    /// Allocated power draw (watts)
50    #[serde(
51        rename = "allocated_draw",
52        default,
53        with = "::serde_with::rust::double_option",
54        skip_serializing_if = "Option::is_none"
55    )]
56    pub allocated_draw: Option<Option<i32>>,
57    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
58    pub description: Option<String>,
59}
60
61impl DcimPowerPortTemplatesCreateRequest {
62    pub fn new(name: String) -> DcimPowerPortTemplatesCreateRequest {
63        DcimPowerPortTemplatesCreateRequest {
64            device_type: None,
65            module_type: None,
66            name,
67            label: None,
68            r#type: None,
69            maximum_draw: None,
70            allocated_draw: None,
71            description: None,
72        }
73    }
74}
75
76/// * `iec-60320-c6` - C6 * `iec-60320-c8` - C8 * `iec-60320-c14` - C14 * `iec-60320-c16` - C16 * `iec-60320-c18` - C18 * `iec-60320-c20` - C20 * `iec-60320-c22` - C22 * `iec-60309-p-n-e-4h` - P+N+E 4H * `iec-60309-p-n-e-6h` - P+N+E 6H * `iec-60309-p-n-e-9h` - P+N+E 9H * `iec-60309-2p-e-4h` - 2P+E 4H * `iec-60309-2p-e-6h` - 2P+E 6H * `iec-60309-2p-e-9h` - 2P+E 9H * `iec-60309-3p-e-4h` - 3P+E 4H * `iec-60309-3p-e-6h` - 3P+E 6H * `iec-60309-3p-e-9h` - 3P+E 9H * `iec-60309-3p-n-e-4h` - 3P+N+E 4H * `iec-60309-3p-n-e-6h` - 3P+N+E 6H * `iec-60309-3p-n-e-9h` - 3P+N+E 9H * `iec-60906-1` - IEC 60906-1 * `nbr-14136-10a` - 2P+T 10A (NBR 14136) * `nbr-14136-20a` - 2P+T 20A (NBR 14136) * `nema-1-15p` - NEMA 1-15P * `nema-5-15p` - NEMA 5-15P * `nema-5-20p` - NEMA 5-20P * `nema-5-30p` - NEMA 5-30P * `nema-5-50p` - NEMA 5-50P * `nema-6-15p` - NEMA 6-15P * `nema-6-20p` - NEMA 6-20P * `nema-6-30p` - NEMA 6-30P * `nema-6-50p` - NEMA 6-50P * `nema-10-30p` - NEMA 10-30P * `nema-10-50p` - NEMA 10-50P * `nema-14-20p` - NEMA 14-20P * `nema-14-30p` - NEMA 14-30P * `nema-14-50p` - NEMA 14-50P * `nema-14-60p` - NEMA 14-60P * `nema-15-15p` - NEMA 15-15P * `nema-15-20p` - NEMA 15-20P * `nema-15-30p` - NEMA 15-30P * `nema-15-50p` - NEMA 15-50P * `nema-15-60p` - NEMA 15-60P * `nema-l1-15p` - NEMA L1-15P * `nema-l5-15p` - NEMA L5-15P * `nema-l5-20p` - NEMA L5-20P * `nema-l5-30p` - NEMA L5-30P * `nema-l5-50p` - NEMA L5-50P * `nema-l6-15p` - NEMA L6-15P * `nema-l6-20p` - NEMA L6-20P * `nema-l6-30p` - NEMA L6-30P * `nema-l6-50p` - NEMA L6-50P * `nema-l10-30p` - NEMA L10-30P * `nema-l14-20p` - NEMA L14-20P * `nema-l14-30p` - NEMA L14-30P * `nema-l14-50p` - NEMA L14-50P * `nema-l14-60p` - NEMA L14-60P * `nema-l15-20p` - NEMA L15-20P * `nema-l15-30p` - NEMA L15-30P * `nema-l15-50p` - NEMA L15-50P * `nema-l15-60p` - NEMA L15-60P * `nema-l21-20p` - NEMA L21-20P * `nema-l21-30p` - NEMA L21-30P * `nema-l22-20p` - NEMA L22-20P * `nema-l22-30p` - NEMA L22-30P * `cs6361c` - CS6361C * `cs6365c` - CS6365C * `cs8165c` - CS8165C * `cs8265c` - CS8265C * `cs8365c` - CS8365C * `cs8465c` - CS8465C * `ita-c` - ITA Type C (CEE 7/16) * `ita-e` - ITA Type E (CEE 7/6) * `ita-f` - ITA Type F (CEE 7/4) * `ita-ef` - ITA Type E/F (CEE 7/7) * `ita-g` - ITA Type G (BS 1363) * `ita-h` - ITA Type H * `ita-i` - ITA Type I * `ita-j` - ITA Type J * `ita-k` - ITA Type K * `ita-l` - ITA Type L (CEI 23-50) * `ita-m` - ITA Type M (BS 546) * `ita-n` - ITA Type N * `ita-o` - ITA Type O * `usb-a` - USB Type A * `usb-b` - USB Type B * `usb-c` - USB Type C * `usb-mini-a` - USB Mini A * `usb-mini-b` - USB Mini B * `usb-micro-a` - USB Micro A * `usb-micro-b` - USB Micro B * `usb-micro-ab` - USB Micro AB * `usb-3-b` - USB 3.0 Type B * `usb-3-micro-b` - USB 3.0 Micro B * `molex-micro-fit-1x2` - Molex Micro-Fit 1x2 * `molex-micro-fit-2x2` - Molex Micro-Fit 2x2 * `molex-micro-fit-2x3` - Molex Micro-Fit 2x3 * `molex-micro-fit-2x4` - Molex Micro-Fit 2x4 * `dc-terminal` - DC Terminal * `saf-d-grid` - Saf-D-Grid * `neutrik-powercon-20` - Neutrik powerCON (20A) * `neutrik-powercon-32` - Neutrik powerCON (32A) * `neutrik-powercon-true1` - Neutrik powerCON TRUE1 * `neutrik-powercon-true1-top` - Neutrik powerCON TRUE1 TOP * `ubiquiti-smartpower` - Ubiquiti SmartPower * `hardwired` - Hardwired * `other` - Other
77#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
78pub enum RHashType {
79    #[serde(rename = "iec-60320-c6")]
80    Iec60320C6,
81    #[serde(rename = "iec-60320-c8")]
82    Iec60320C8,
83    #[serde(rename = "iec-60320-c14")]
84    Iec60320C14,
85    #[serde(rename = "iec-60320-c16")]
86    Iec60320C16,
87    #[serde(rename = "iec-60320-c18")]
88    Iec60320C18,
89    #[serde(rename = "iec-60320-c20")]
90    Iec60320C20,
91    #[serde(rename = "iec-60320-c22")]
92    Iec60320C22,
93    #[serde(rename = "iec-60309-p-n-e-4h")]
94    Iec60309PNE4h,
95    #[serde(rename = "iec-60309-p-n-e-6h")]
96    Iec60309PNE6h,
97    #[serde(rename = "iec-60309-p-n-e-9h")]
98    Iec60309PNE9h,
99    #[serde(rename = "iec-60309-2p-e-4h")]
100    Iec603092pE4h,
101    #[serde(rename = "iec-60309-2p-e-6h")]
102    Iec603092pE6h,
103    #[serde(rename = "iec-60309-2p-e-9h")]
104    Iec603092pE9h,
105    #[serde(rename = "iec-60309-3p-e-4h")]
106    Iec603093pE4h,
107    #[serde(rename = "iec-60309-3p-e-6h")]
108    Iec603093pE6h,
109    #[serde(rename = "iec-60309-3p-e-9h")]
110    Iec603093pE9h,
111    #[serde(rename = "iec-60309-3p-n-e-4h")]
112    Iec603093pNE4h,
113    #[serde(rename = "iec-60309-3p-n-e-6h")]
114    Iec603093pNE6h,
115    #[serde(rename = "iec-60309-3p-n-e-9h")]
116    Iec603093pNE9h,
117    #[serde(rename = "iec-60906-1")]
118    Iec609061,
119    #[serde(rename = "nbr-14136-10a")]
120    Nbr1413610a,
121    #[serde(rename = "nbr-14136-20a")]
122    Nbr1413620a,
123    #[serde(rename = "nema-1-15p")]
124    Nema115p,
125    #[serde(rename = "nema-5-15p")]
126    Nema515p,
127    #[serde(rename = "nema-5-20p")]
128    Nema520p,
129    #[serde(rename = "nema-5-30p")]
130    Nema530p,
131    #[serde(rename = "nema-5-50p")]
132    Nema550p,
133    #[serde(rename = "nema-6-15p")]
134    Nema615p,
135    #[serde(rename = "nema-6-20p")]
136    Nema620p,
137    #[serde(rename = "nema-6-30p")]
138    Nema630p,
139    #[serde(rename = "nema-6-50p")]
140    Nema650p,
141    #[serde(rename = "nema-10-30p")]
142    Nema1030p,
143    #[serde(rename = "nema-10-50p")]
144    Nema1050p,
145    #[serde(rename = "nema-14-20p")]
146    Nema1420p,
147    #[serde(rename = "nema-14-30p")]
148    Nema1430p,
149    #[serde(rename = "nema-14-50p")]
150    Nema1450p,
151    #[serde(rename = "nema-14-60p")]
152    Nema1460p,
153    #[serde(rename = "nema-15-15p")]
154    Nema1515p,
155    #[serde(rename = "nema-15-20p")]
156    Nema1520p,
157    #[serde(rename = "nema-15-30p")]
158    Nema1530p,
159    #[serde(rename = "nema-15-50p")]
160    Nema1550p,
161    #[serde(rename = "nema-15-60p")]
162    Nema1560p,
163    #[serde(rename = "nema-l1-15p")]
164    NemaL115p,
165    #[serde(rename = "nema-l5-15p")]
166    NemaL515p,
167    #[serde(rename = "nema-l5-20p")]
168    NemaL520p,
169    #[serde(rename = "nema-l5-30p")]
170    NemaL530p,
171    #[serde(rename = "nema-l5-50p")]
172    NemaL550p,
173    #[serde(rename = "nema-l6-15p")]
174    NemaL615p,
175    #[serde(rename = "nema-l6-20p")]
176    NemaL620p,
177    #[serde(rename = "nema-l6-30p")]
178    NemaL630p,
179    #[serde(rename = "nema-l6-50p")]
180    NemaL650p,
181    #[serde(rename = "nema-l10-30p")]
182    NemaL1030p,
183    #[serde(rename = "nema-l14-20p")]
184    NemaL1420p,
185    #[serde(rename = "nema-l14-30p")]
186    NemaL1430p,
187    #[serde(rename = "nema-l14-50p")]
188    NemaL1450p,
189    #[serde(rename = "nema-l14-60p")]
190    NemaL1460p,
191    #[serde(rename = "nema-l15-20p")]
192    NemaL1520p,
193    #[serde(rename = "nema-l15-30p")]
194    NemaL1530p,
195    #[serde(rename = "nema-l15-50p")]
196    NemaL1550p,
197    #[serde(rename = "nema-l15-60p")]
198    NemaL1560p,
199    #[serde(rename = "nema-l21-20p")]
200    NemaL2120p,
201    #[serde(rename = "nema-l21-30p")]
202    NemaL2130p,
203    #[serde(rename = "nema-l22-20p")]
204    NemaL2220p,
205    #[serde(rename = "nema-l22-30p")]
206    NemaL2230p,
207    #[serde(rename = "cs6361c")]
208    Cs6361c,
209    #[serde(rename = "cs6365c")]
210    Cs6365c,
211    #[serde(rename = "cs8165c")]
212    Cs8165c,
213    #[serde(rename = "cs8265c")]
214    Cs8265c,
215    #[serde(rename = "cs8365c")]
216    Cs8365c,
217    #[serde(rename = "cs8465c")]
218    Cs8465c,
219    #[serde(rename = "ita-c")]
220    ItaC,
221    #[serde(rename = "ita-e")]
222    ItaE,
223    #[serde(rename = "ita-f")]
224    ItaF,
225    #[serde(rename = "ita-ef")]
226    ItaEf,
227    #[serde(rename = "ita-g")]
228    ItaG,
229    #[serde(rename = "ita-h")]
230    ItaH,
231    #[serde(rename = "ita-i")]
232    ItaI,
233    #[serde(rename = "ita-j")]
234    ItaJ,
235    #[serde(rename = "ita-k")]
236    ItaK,
237    #[serde(rename = "ita-l")]
238    ItaL,
239    #[serde(rename = "ita-m")]
240    ItaM,
241    #[serde(rename = "ita-n")]
242    ItaN,
243    #[serde(rename = "ita-o")]
244    ItaO,
245    #[serde(rename = "usb-a")]
246    UsbA,
247    #[serde(rename = "usb-b")]
248    UsbB,
249    #[serde(rename = "usb-c")]
250    UsbC,
251    #[serde(rename = "usb-mini-a")]
252    UsbMiniA,
253    #[serde(rename = "usb-mini-b")]
254    UsbMiniB,
255    #[serde(rename = "usb-micro-a")]
256    UsbMicroA,
257    #[serde(rename = "usb-micro-b")]
258    UsbMicroB,
259    #[serde(rename = "usb-micro-ab")]
260    UsbMicroAb,
261    #[serde(rename = "usb-3-b")]
262    Usb3B,
263    #[serde(rename = "usb-3-micro-b")]
264    Usb3MicroB,
265    #[serde(rename = "molex-micro-fit-1x2")]
266    MolexMicroFit1x2,
267    #[serde(rename = "molex-micro-fit-2x2")]
268    MolexMicroFit2x2,
269    #[serde(rename = "molex-micro-fit-2x3")]
270    MolexMicroFit2x3,
271    #[serde(rename = "molex-micro-fit-2x4")]
272    MolexMicroFit2x4,
273    #[serde(rename = "dc-terminal")]
274    DcTerminal,
275    #[serde(rename = "saf-d-grid")]
276    SafDGrid,
277    #[serde(rename = "neutrik-powercon-20")]
278    NeutrikPowercon20,
279    #[serde(rename = "neutrik-powercon-32")]
280    NeutrikPowercon32,
281    #[serde(rename = "neutrik-powercon-true1")]
282    NeutrikPowerconTrue1,
283    #[serde(rename = "neutrik-powercon-true1-top")]
284    NeutrikPowerconTrue1Top,
285    #[serde(rename = "ubiquiti-smartpower")]
286    UbiquitiSmartpower,
287    #[serde(rename = "hardwired")]
288    Hardwired,
289    #[serde(rename = "other")]
290    Other,
291    #[serde(rename = "")]
292    Empty,
293    #[serde(rename = "null")]
294    Null,
295}
296
297impl Default for RHashType {
298    fn default() -> RHashType {
299        Self::Iec60320C6
300    }
301}