update generated docs
[pve-docs.git] / api-viewer / apidata.js
1 var pveapi = [
2    {
3       "children" : [
4          {
5             "children" : [
6                {
7                   "children" : [
8                      {
9                         "children" : [
10                            {
11                               "info" : {
12                                  "DELETE" : {
13                                     "description" : "Delete rule.",
14                                     "method" : "DELETE",
15                                     "name" : "delete_rule",
16                                     "parameters" : {
17                                        "additionalProperties" : 0,
18                                        "properties" : {
19                                           "digest" : {
20                                              "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
21                                              "maxLength" : 40,
22                                              "optional" : 1,
23                                              "type" : "string",
24                                              "typetext" : "<string>"
25                                           },
26                                           "group" : {
27                                              "description" : "Security Group name.",
28                                              "maxLength" : 18,
29                                              "minLength" : 2,
30                                              "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
31                                              "type" : "string"
32                                           },
33                                           "pos" : {
34                                              "description" : "Update rule at position <pos>.",
35                                              "minimum" : 0,
36                                              "optional" : 1,
37                                              "type" : "integer",
38                                              "typetext" : "<integer> (0 - N)"
39                                           }
40                                        }
41                                     },
42                                     "permissions" : {
43                                        "check" : [
44                                           "perm",
45                                           "/",
46                                           [
47                                              "Sys.Modify"
48                                           ]
49                                        ]
50                                     },
51                                     "protected" : 1,
52                                     "proxyto" : null,
53                                     "returns" : {
54                                        "type" : "null"
55                                     }
56                                  },
57                                  "GET" : {
58                                     "description" : "Get single rule data.",
59                                     "method" : "GET",
60                                     "name" : "get_rule",
61                                     "parameters" : {
62                                        "additionalProperties" : 0,
63                                        "properties" : {
64                                           "group" : {
65                                              "description" : "Security Group name.",
66                                              "maxLength" : 18,
67                                              "minLength" : 2,
68                                              "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
69                                              "type" : "string"
70                                           },
71                                           "pos" : {
72                                              "description" : "Update rule at position <pos>.",
73                                              "minimum" : 0,
74                                              "optional" : 1,
75                                              "type" : "integer",
76                                              "typetext" : "<integer> (0 - N)"
77                                           }
78                                        }
79                                     },
80                                     "permissions" : {
81                                        "check" : [
82                                           "perm",
83                                           "/",
84                                           [
85                                              "Sys.Audit"
86                                           ]
87                                        ]
88                                     },
89                                     "proxyto" : null,
90                                     "returns" : {
91                                        "properties" : {
92                                           "pos" : {
93                                              "type" : "integer"
94                                           }
95                                        },
96                                        "type" : "object"
97                                     }
98                                  },
99                                  "PUT" : {
100                                     "description" : "Modify rule data.",
101                                     "method" : "PUT",
102                                     "name" : "update_rule",
103                                     "parameters" : {
104                                        "additionalProperties" : 0,
105                                        "properties" : {
106                                           "action" : {
107                                              "description" : "Rule action ('ACCEPT', 'DROP', 'REJECT') or security group name.",
108                                              "maxLength" : 20,
109                                              "minLength" : 2,
110                                              "optional" : 1,
111                                              "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
112                                              "type" : "string"
113                                           },
114                                           "comment" : {
115                                              "description" : "Descriptive comment.",
116                                              "optional" : 1,
117                                              "type" : "string",
118                                              "typetext" : "<string>"
119                                           },
120                                           "delete" : {
121                                              "description" : "A list of settings you want to delete.",
122                                              "format" : "pve-configid-list",
123                                              "optional" : 1,
124                                              "type" : "string",
125                                              "typetext" : "<string>"
126                                           },
127                                           "dest" : {
128                                              "description" : "Restrict packet destination address. This can refer to a single IP address, an IP set ('+ipsetname') or an IP alias definition. You can also specify an address range like '20.34.101.207-201.3.9.99', or a list of IP addresses and networks (entries are separated by comma). Please do not mix IPv4 and IPv6 addresses inside such lists.",
129                                              "format" : "pve-fw-addr-spec",
130                                              "optional" : 1,
131                                              "type" : "string",
132                                              "typetext" : "<string>"
133                                           },
134                                           "digest" : {
135                                              "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
136                                              "maxLength" : 40,
137                                              "optional" : 1,
138                                              "type" : "string",
139                                              "typetext" : "<string>"
140                                           },
141                                           "dport" : {
142                                              "description" : "Restrict TCP/UDP destination port. You can use service names or simple numbers (0-65535), as defined in '/etc/services'. Port ranges can be specified with '\\d+:\\d+', for example '80:85', and you can use comma separated list to match several ports or ranges.",
143                                              "format" : "pve-fw-dport-spec",
144                                              "optional" : 1,
145                                              "type" : "string",
146                                              "typetext" : "<string>"
147                                           },
148                                           "enable" : {
149                                              "description" : "Flag to enable/disable a rule.",
150                                              "minimum" : 0,
151                                              "optional" : 1,
152                                              "type" : "integer",
153                                              "typetext" : "<integer> (0 - N)"
154                                           },
155                                           "group" : {
156                                              "description" : "Security Group name.",
157                                              "maxLength" : 18,
158                                              "minLength" : 2,
159                                              "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
160                                              "type" : "string"
161                                           },
162                                           "iface" : {
163                                              "description" : "Network interface name. You have to use network configuration key names for VMs and containers ('net\\d+'). Host related rules can use arbitrary strings.",
164                                              "format" : "pve-iface",
165                                              "maxLength" : 20,
166                                              "minLength" : 2,
167                                              "optional" : 1,
168                                              "type" : "string",
169                                              "typetext" : "<string>"
170                                           },
171                                           "macro" : {
172                                              "description" : "Use predefined standard macro.",
173                                              "maxLength" : 128,
174                                              "optional" : 1,
175                                              "type" : "string",
176                                              "typetext" : "<string>"
177                                           },
178                                           "moveto" : {
179                                              "description" : "Move rule to new position <moveto>. Other arguments are ignored.",
180                                              "minimum" : 0,
181                                              "optional" : 1,
182                                              "type" : "integer",
183                                              "typetext" : "<integer> (0 - N)"
184                                           },
185                                           "pos" : {
186                                              "description" : "Update rule at position <pos>.",
187                                              "minimum" : 0,
188                                              "optional" : 1,
189                                              "type" : "integer",
190                                              "typetext" : "<integer> (0 - N)"
191                                           },
192                                           "proto" : {
193                                              "description" : "IP protocol. You can use protocol names ('tcp'/'udp') or simple numbers, as defined in '/etc/protocols'.",
194                                              "format" : "pve-fw-protocol-spec",
195                                              "optional" : 1,
196                                              "type" : "string",
197                                              "typetext" : "<string>"
198                                           },
199                                           "source" : {
200                                              "description" : "Restrict packet source address. This can refer to a single IP address, an IP set ('+ipsetname') or an IP alias definition. You can also specify an address range like '20.34.101.207-201.3.9.99', or a list of IP addresses and networks (entries are separated by comma). Please do not mix IPv4 and IPv6 addresses inside such lists.",
201                                              "format" : "pve-fw-addr-spec",
202                                              "optional" : 1,
203                                              "type" : "string",
204                                              "typetext" : "<string>"
205                                           },
206                                           "sport" : {
207                                              "description" : "Restrict TCP/UDP source port. You can use service names or simple numbers (0-65535), as defined in '/etc/services'. Port ranges can be specified with '\\d+:\\d+', for example '80:85', and you can use comma separated list to match several ports or ranges.",
208                                              "format" : "pve-fw-sport-spec",
209                                              "optional" : 1,
210                                              "type" : "string",
211                                              "typetext" : "<string>"
212                                           },
213                                           "type" : {
214                                              "description" : "Rule type.",
215                                              "enum" : [
216                                                 "in",
217                                                 "out",
218                                                 "group"
219                                              ],
220                                              "optional" : 1,
221                                              "type" : "string"
222                                           }
223                                        }
224                                     },
225                                     "permissions" : {
226                                        "check" : [
227                                           "perm",
228                                           "/",
229                                           [
230                                              "Sys.Modify"
231                                           ]
232                                        ]
233                                     },
234                                     "protected" : 1,
235                                     "proxyto" : null,
236                                     "returns" : {
237                                        "type" : "null"
238                                     }
239                                  }
240                               },
241                               "leaf" : 1,
242                               "path" : "/cluster/firewall/groups/{group}/{pos}",
243                               "text" : "{pos}"
244                            }
245                         ],
246                         "info" : {
247                            "DELETE" : {
248                               "description" : "Delete security group.",
249                               "method" : "DELETE",
250                               "name" : "delete_security_group",
251                               "parameters" : {
252                                  "additionalProperties" : 0,
253                                  "properties" : {
254                                     "group" : {
255                                        "description" : "Security Group name.",
256                                        "maxLength" : 18,
257                                        "minLength" : 2,
258                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
259                                        "type" : "string"
260                                     }
261                                  }
262                               },
263                               "permissions" : {
264                                  "check" : [
265                                     "perm",
266                                     "/",
267                                     [
268                                        "Sys.Modify"
269                                     ]
270                                  ]
271                               },
272                               "protected" : 1,
273                               "returns" : {
274                                  "type" : "null"
275                               }
276                            },
277                            "GET" : {
278                               "description" : "List rules.",
279                               "method" : "GET",
280                               "name" : "get_rules",
281                               "parameters" : {
282                                  "additionalProperties" : 0,
283                                  "properties" : {
284                                     "group" : {
285                                        "description" : "Security Group name.",
286                                        "maxLength" : 18,
287                                        "minLength" : 2,
288                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
289                                        "type" : "string"
290                                     }
291                                  }
292                               },
293                               "permissions" : {
294                                  "check" : [
295                                     "perm",
296                                     "/",
297                                     [
298                                        "Sys.Audit"
299                                     ]
300                                  ]
301                               },
302                               "proxyto" : null,
303                               "returns" : {
304                                  "items" : {
305                                     "properties" : {
306                                        "pos" : {
307                                           "type" : "integer"
308                                        }
309                                     },
310                                     "type" : "object"
311                                  },
312                                  "links" : [
313                                     {
314                                        "href" : "{pos}",
315                                        "rel" : "child"
316                                     }
317                                  ],
318                                  "type" : "array"
319                               }
320                            },
321                            "POST" : {
322                               "description" : "Create new rule.",
323                               "method" : "POST",
324                               "name" : "create_rule",
325                               "parameters" : {
326                                  "additionalProperties" : 0,
327                                  "properties" : {
328                                     "action" : {
329                                        "description" : "Rule action ('ACCEPT', 'DROP', 'REJECT') or security group name.",
330                                        "maxLength" : 20,
331                                        "minLength" : 2,
332                                        "optional" : 0,
333                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
334                                        "type" : "string"
335                                     },
336                                     "comment" : {
337                                        "description" : "Descriptive comment.",
338                                        "optional" : 1,
339                                        "type" : "string",
340                                        "typetext" : "<string>"
341                                     },
342                                     "dest" : {
343                                        "description" : "Restrict packet destination address. This can refer to a single IP address, an IP set ('+ipsetname') or an IP alias definition. You can also specify an address range like '20.34.101.207-201.3.9.99', or a list of IP addresses and networks (entries are separated by comma). Please do not mix IPv4 and IPv6 addresses inside such lists.",
344                                        "format" : "pve-fw-addr-spec",
345                                        "optional" : 1,
346                                        "type" : "string",
347                                        "typetext" : "<string>"
348                                     },
349                                     "digest" : {
350                                        "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
351                                        "maxLength" : 40,
352                                        "optional" : 1,
353                                        "type" : "string",
354                                        "typetext" : "<string>"
355                                     },
356                                     "dport" : {
357                                        "description" : "Restrict TCP/UDP destination port. You can use service names or simple numbers (0-65535), as defined in '/etc/services'. Port ranges can be specified with '\\d+:\\d+', for example '80:85', and you can use comma separated list to match several ports or ranges.",
358                                        "format" : "pve-fw-dport-spec",
359                                        "optional" : 1,
360                                        "type" : "string",
361                                        "typetext" : "<string>"
362                                     },
363                                     "enable" : {
364                                        "description" : "Flag to enable/disable a rule.",
365                                        "minimum" : 0,
366                                        "optional" : 1,
367                                        "type" : "integer",
368                                        "typetext" : "<integer> (0 - N)"
369                                     },
370                                     "group" : {
371                                        "description" : "Security Group name.",
372                                        "maxLength" : 18,
373                                        "minLength" : 2,
374                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
375                                        "type" : "string"
376                                     },
377                                     "iface" : {
378                                        "description" : "Network interface name. You have to use network configuration key names for VMs and containers ('net\\d+'). Host related rules can use arbitrary strings.",
379                                        "format" : "pve-iface",
380                                        "maxLength" : 20,
381                                        "minLength" : 2,
382                                        "optional" : 1,
383                                        "type" : "string",
384                                        "typetext" : "<string>"
385                                     },
386                                     "macro" : {
387                                        "description" : "Use predefined standard macro.",
388                                        "maxLength" : 128,
389                                        "optional" : 1,
390                                        "type" : "string",
391                                        "typetext" : "<string>"
392                                     },
393                                     "pos" : {
394                                        "description" : "Update rule at position <pos>.",
395                                        "minimum" : 0,
396                                        "optional" : 1,
397                                        "type" : "integer",
398                                        "typetext" : "<integer> (0 - N)"
399                                     },
400                                     "proto" : {
401                                        "description" : "IP protocol. You can use protocol names ('tcp'/'udp') or simple numbers, as defined in '/etc/protocols'.",
402                                        "format" : "pve-fw-protocol-spec",
403                                        "optional" : 1,
404                                        "type" : "string",
405                                        "typetext" : "<string>"
406                                     },
407                                     "source" : {
408                                        "description" : "Restrict packet source address. This can refer to a single IP address, an IP set ('+ipsetname') or an IP alias definition. You can also specify an address range like '20.34.101.207-201.3.9.99', or a list of IP addresses and networks (entries are separated by comma). Please do not mix IPv4 and IPv6 addresses inside such lists.",
409                                        "format" : "pve-fw-addr-spec",
410                                        "optional" : 1,
411                                        "type" : "string",
412                                        "typetext" : "<string>"
413                                     },
414                                     "sport" : {
415                                        "description" : "Restrict TCP/UDP source port. You can use service names or simple numbers (0-65535), as defined in '/etc/services'. Port ranges can be specified with '\\d+:\\d+', for example '80:85', and you can use comma separated list to match several ports or ranges.",
416                                        "format" : "pve-fw-sport-spec",
417                                        "optional" : 1,
418                                        "type" : "string",
419                                        "typetext" : "<string>"
420                                     },
421                                     "type" : {
422                                        "description" : "Rule type.",
423                                        "enum" : [
424                                           "in",
425                                           "out",
426                                           "group"
427                                        ],
428                                        "optional" : 0,
429                                        "type" : "string"
430                                     }
431                                  }
432                               },
433                               "permissions" : {
434                                  "check" : [
435                                     "perm",
436                                     "/",
437                                     [
438                                        "Sys.Modify"
439                                     ]
440                                  ]
441                               },
442                               "protected" : 1,
443                               "proxyto" : null,
444                               "returns" : {
445                                  "type" : "null"
446                               }
447                            }
448                         },
449                         "leaf" : 0,
450                         "path" : "/cluster/firewall/groups/{group}",
451                         "text" : "{group}"
452                      }
453                   ],
454                   "info" : {
455                      "GET" : {
456                         "description" : "List security groups.",
457                         "method" : "GET",
458                         "name" : "list_security_groups",
459                         "parameters" : {
460                            "additionalProperties" : 0
461                         },
462                         "permissions" : {
463                            "user" : "all"
464                         },
465                         "returns" : {
466                            "items" : {
467                               "properties" : {
468                                  "comment" : {
469                                     "optional" : 1,
470                                     "type" : "string"
471                                  },
472                                  "digest" : {
473                                     "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
474                                     "maxLength" : 40,
475                                     "optional" : 0,
476                                     "type" : "string"
477                                  },
478                                  "group" : {
479                                     "description" : "Security Group name.",
480                                     "maxLength" : 18,
481                                     "minLength" : 2,
482                                     "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
483                                     "type" : "string"
484                                  }
485                               },
486                               "type" : "object"
487                            },
488                            "links" : [
489                               {
490                                  "href" : "{group}",
491                                  "rel" : "child"
492                               }
493                            ],
494                            "type" : "array"
495                         }
496                      },
497                      "POST" : {
498                         "description" : "Create new security group.",
499                         "method" : "POST",
500                         "name" : "create_security_group",
501                         "parameters" : {
502                            "additionalProperties" : 0,
503                            "properties" : {
504                               "comment" : {
505                                  "optional" : 1,
506                                  "type" : "string",
507                                  "typetext" : "<string>"
508                               },
509                               "digest" : {
510                                  "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
511                                  "maxLength" : 40,
512                                  "optional" : 1,
513                                  "type" : "string",
514                                  "typetext" : "<string>"
515                               },
516                               "group" : {
517                                  "description" : "Security Group name.",
518                                  "maxLength" : 18,
519                                  "minLength" : 2,
520                                  "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
521                                  "type" : "string"
522                               },
523                               "rename" : {
524                                  "description" : "Rename/update an existing security group. You can set 'rename' to the same value as 'name' to update the 'comment' of an existing group.",
525                                  "maxLength" : 18,
526                                  "minLength" : 2,
527                                  "optional" : 1,
528                                  "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
529                                  "type" : "string"
530                               }
531                            }
532                         },
533                         "permissions" : {
534                            "check" : [
535                               "perm",
536                               "/",
537                               [
538                                  "Sys.Modify"
539                               ]
540                            ]
541                         },
542                         "protected" : 1,
543                         "returns" : {
544                            "type" : "null"
545                         }
546                      }
547                   },
548                   "leaf" : 0,
549                   "path" : "/cluster/firewall/groups",
550                   "text" : "groups"
551                },
552                {
553                   "children" : [
554                      {
555                         "info" : {
556                            "DELETE" : {
557                               "description" : "Delete rule.",
558                               "method" : "DELETE",
559                               "name" : "delete_rule",
560                               "parameters" : {
561                                  "additionalProperties" : 0,
562                                  "properties" : {
563                                     "digest" : {
564                                        "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
565                                        "maxLength" : 40,
566                                        "optional" : 1,
567                                        "type" : "string",
568                                        "typetext" : "<string>"
569                                     },
570                                     "pos" : {
571                                        "description" : "Update rule at position <pos>.",
572                                        "minimum" : 0,
573                                        "optional" : 1,
574                                        "type" : "integer",
575                                        "typetext" : "<integer> (0 - N)"
576                                     }
577                                  }
578                               },
579                               "permissions" : {
580                                  "check" : [
581                                     "perm",
582                                     "/",
583                                     [
584                                        "Sys.Modify"
585                                     ]
586                                  ]
587                               },
588                               "protected" : 1,
589                               "proxyto" : null,
590                               "returns" : {
591                                  "type" : "null"
592                               }
593                            },
594                            "GET" : {
595                               "description" : "Get single rule data.",
596                               "method" : "GET",
597                               "name" : "get_rule",
598                               "parameters" : {
599                                  "additionalProperties" : 0,
600                                  "properties" : {
601                                     "pos" : {
602                                        "description" : "Update rule at position <pos>.",
603                                        "minimum" : 0,
604                                        "optional" : 1,
605                                        "type" : "integer",
606                                        "typetext" : "<integer> (0 - N)"
607                                     }
608                                  }
609                               },
610                               "permissions" : {
611                                  "check" : [
612                                     "perm",
613                                     "/",
614                                     [
615                                        "Sys.Audit"
616                                     ]
617                                  ]
618                               },
619                               "proxyto" : null,
620                               "returns" : {
621                                  "properties" : {
622                                     "pos" : {
623                                        "type" : "integer"
624                                     }
625                                  },
626                                  "type" : "object"
627                               }
628                            },
629                            "PUT" : {
630                               "description" : "Modify rule data.",
631                               "method" : "PUT",
632                               "name" : "update_rule",
633                               "parameters" : {
634                                  "additionalProperties" : 0,
635                                  "properties" : {
636                                     "action" : {
637                                        "description" : "Rule action ('ACCEPT', 'DROP', 'REJECT') or security group name.",
638                                        "maxLength" : 20,
639                                        "minLength" : 2,
640                                        "optional" : 1,
641                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
642                                        "type" : "string"
643                                     },
644                                     "comment" : {
645                                        "description" : "Descriptive comment.",
646                                        "optional" : 1,
647                                        "type" : "string",
648                                        "typetext" : "<string>"
649                                     },
650                                     "delete" : {
651                                        "description" : "A list of settings you want to delete.",
652                                        "format" : "pve-configid-list",
653                                        "optional" : 1,
654                                        "type" : "string",
655                                        "typetext" : "<string>"
656                                     },
657                                     "dest" : {
658                                        "description" : "Restrict packet destination address. This can refer to a single IP address, an IP set ('+ipsetname') or an IP alias definition. You can also specify an address range like '20.34.101.207-201.3.9.99', or a list of IP addresses and networks (entries are separated by comma). Please do not mix IPv4 and IPv6 addresses inside such lists.",
659                                        "format" : "pve-fw-addr-spec",
660                                        "optional" : 1,
661                                        "type" : "string",
662                                        "typetext" : "<string>"
663                                     },
664                                     "digest" : {
665                                        "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
666                                        "maxLength" : 40,
667                                        "optional" : 1,
668                                        "type" : "string",
669                                        "typetext" : "<string>"
670                                     },
671                                     "dport" : {
672                                        "description" : "Restrict TCP/UDP destination port. You can use service names or simple numbers (0-65535), as defined in '/etc/services'. Port ranges can be specified with '\\d+:\\d+', for example '80:85', and you can use comma separated list to match several ports or ranges.",
673                                        "format" : "pve-fw-dport-spec",
674                                        "optional" : 1,
675                                        "type" : "string",
676                                        "typetext" : "<string>"
677                                     },
678                                     "enable" : {
679                                        "description" : "Flag to enable/disable a rule.",
680                                        "minimum" : 0,
681                                        "optional" : 1,
682                                        "type" : "integer",
683                                        "typetext" : "<integer> (0 - N)"
684                                     },
685                                     "iface" : {
686                                        "description" : "Network interface name. You have to use network configuration key names for VMs and containers ('net\\d+'). Host related rules can use arbitrary strings.",
687                                        "format" : "pve-iface",
688                                        "maxLength" : 20,
689                                        "minLength" : 2,
690                                        "optional" : 1,
691                                        "type" : "string",
692                                        "typetext" : "<string>"
693                                     },
694                                     "macro" : {
695                                        "description" : "Use predefined standard macro.",
696                                        "maxLength" : 128,
697                                        "optional" : 1,
698                                        "type" : "string",
699                                        "typetext" : "<string>"
700                                     },
701                                     "moveto" : {
702                                        "description" : "Move rule to new position <moveto>. Other arguments are ignored.",
703                                        "minimum" : 0,
704                                        "optional" : 1,
705                                        "type" : "integer",
706                                        "typetext" : "<integer> (0 - N)"
707                                     },
708                                     "pos" : {
709                                        "description" : "Update rule at position <pos>.",
710                                        "minimum" : 0,
711                                        "optional" : 1,
712                                        "type" : "integer",
713                                        "typetext" : "<integer> (0 - N)"
714                                     },
715                                     "proto" : {
716                                        "description" : "IP protocol. You can use protocol names ('tcp'/'udp') or simple numbers, as defined in '/etc/protocols'.",
717                                        "format" : "pve-fw-protocol-spec",
718                                        "optional" : 1,
719                                        "type" : "string",
720                                        "typetext" : "<string>"
721                                     },
722                                     "source" : {
723                                        "description" : "Restrict packet source address. This can refer to a single IP address, an IP set ('+ipsetname') or an IP alias definition. You can also specify an address range like '20.34.101.207-201.3.9.99', or a list of IP addresses and networks (entries are separated by comma). Please do not mix IPv4 and IPv6 addresses inside such lists.",
724                                        "format" : "pve-fw-addr-spec",
725                                        "optional" : 1,
726                                        "type" : "string",
727                                        "typetext" : "<string>"
728                                     },
729                                     "sport" : {
730                                        "description" : "Restrict TCP/UDP source port. You can use service names or simple numbers (0-65535), as defined in '/etc/services'. Port ranges can be specified with '\\d+:\\d+', for example '80:85', and you can use comma separated list to match several ports or ranges.",
731                                        "format" : "pve-fw-sport-spec",
732                                        "optional" : 1,
733                                        "type" : "string",
734                                        "typetext" : "<string>"
735                                     },
736                                     "type" : {
737                                        "description" : "Rule type.",
738                                        "enum" : [
739                                           "in",
740                                           "out",
741                                           "group"
742                                        ],
743                                        "optional" : 1,
744                                        "type" : "string"
745                                     }
746                                  }
747                               },
748                               "permissions" : {
749                                  "check" : [
750                                     "perm",
751                                     "/",
752                                     [
753                                        "Sys.Modify"
754                                     ]
755                                  ]
756                               },
757                               "protected" : 1,
758                               "proxyto" : null,
759                               "returns" : {
760                                  "type" : "null"
761                               }
762                            }
763                         },
764                         "leaf" : 1,
765                         "path" : "/cluster/firewall/rules/{pos}",
766                         "text" : "{pos}"
767                      }
768                   ],
769                   "info" : {
770                      "GET" : {
771                         "description" : "List rules.",
772                         "method" : "GET",
773                         "name" : "get_rules",
774                         "parameters" : {
775                            "additionalProperties" : 0
776                         },
777                         "permissions" : {
778                            "check" : [
779                               "perm",
780                               "/",
781                               [
782                                  "Sys.Audit"
783                               ]
784                            ]
785                         },
786                         "proxyto" : null,
787                         "returns" : {
788                            "items" : {
789                               "properties" : {
790                                  "pos" : {
791                                     "type" : "integer"
792                                  }
793                               },
794                               "type" : "object"
795                            },
796                            "links" : [
797                               {
798                                  "href" : "{pos}",
799                                  "rel" : "child"
800                               }
801                            ],
802                            "type" : "array"
803                         }
804                      },
805                      "POST" : {
806                         "description" : "Create new rule.",
807                         "method" : "POST",
808                         "name" : "create_rule",
809                         "parameters" : {
810                            "additionalProperties" : 0,
811                            "properties" : {
812                               "action" : {
813                                  "description" : "Rule action ('ACCEPT', 'DROP', 'REJECT') or security group name.",
814                                  "maxLength" : 20,
815                                  "minLength" : 2,
816                                  "optional" : 0,
817                                  "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
818                                  "type" : "string"
819                               },
820                               "comment" : {
821                                  "description" : "Descriptive comment.",
822                                  "optional" : 1,
823                                  "type" : "string",
824                                  "typetext" : "<string>"
825                               },
826                               "dest" : {
827                                  "description" : "Restrict packet destination address. This can refer to a single IP address, an IP set ('+ipsetname') or an IP alias definition. You can also specify an address range like '20.34.101.207-201.3.9.99', or a list of IP addresses and networks (entries are separated by comma). Please do not mix IPv4 and IPv6 addresses inside such lists.",
828                                  "format" : "pve-fw-addr-spec",
829                                  "optional" : 1,
830                                  "type" : "string",
831                                  "typetext" : "<string>"
832                               },
833                               "digest" : {
834                                  "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
835                                  "maxLength" : 40,
836                                  "optional" : 1,
837                                  "type" : "string",
838                                  "typetext" : "<string>"
839                               },
840                               "dport" : {
841                                  "description" : "Restrict TCP/UDP destination port. You can use service names or simple numbers (0-65535), as defined in '/etc/services'. Port ranges can be specified with '\\d+:\\d+', for example '80:85', and you can use comma separated list to match several ports or ranges.",
842                                  "format" : "pve-fw-dport-spec",
843                                  "optional" : 1,
844                                  "type" : "string",
845                                  "typetext" : "<string>"
846                               },
847                               "enable" : {
848                                  "description" : "Flag to enable/disable a rule.",
849                                  "minimum" : 0,
850                                  "optional" : 1,
851                                  "type" : "integer",
852                                  "typetext" : "<integer> (0 - N)"
853                               },
854                               "iface" : {
855                                  "description" : "Network interface name. You have to use network configuration key names for VMs and containers ('net\\d+'). Host related rules can use arbitrary strings.",
856                                  "format" : "pve-iface",
857                                  "maxLength" : 20,
858                                  "minLength" : 2,
859                                  "optional" : 1,
860                                  "type" : "string",
861                                  "typetext" : "<string>"
862                               },
863                               "macro" : {
864                                  "description" : "Use predefined standard macro.",
865                                  "maxLength" : 128,
866                                  "optional" : 1,
867                                  "type" : "string",
868                                  "typetext" : "<string>"
869                               },
870                               "pos" : {
871                                  "description" : "Update rule at position <pos>.",
872                                  "minimum" : 0,
873                                  "optional" : 1,
874                                  "type" : "integer",
875                                  "typetext" : "<integer> (0 - N)"
876                               },
877                               "proto" : {
878                                  "description" : "IP protocol. You can use protocol names ('tcp'/'udp') or simple numbers, as defined in '/etc/protocols'.",
879                                  "format" : "pve-fw-protocol-spec",
880                                  "optional" : 1,
881                                  "type" : "string",
882                                  "typetext" : "<string>"
883                               },
884                               "source" : {
885                                  "description" : "Restrict packet source address. This can refer to a single IP address, an IP set ('+ipsetname') or an IP alias definition. You can also specify an address range like '20.34.101.207-201.3.9.99', or a list of IP addresses and networks (entries are separated by comma). Please do not mix IPv4 and IPv6 addresses inside such lists.",
886                                  "format" : "pve-fw-addr-spec",
887                                  "optional" : 1,
888                                  "type" : "string",
889                                  "typetext" : "<string>"
890                               },
891                               "sport" : {
892                                  "description" : "Restrict TCP/UDP source port. You can use service names or simple numbers (0-65535), as defined in '/etc/services'. Port ranges can be specified with '\\d+:\\d+', for example '80:85', and you can use comma separated list to match several ports or ranges.",
893                                  "format" : "pve-fw-sport-spec",
894                                  "optional" : 1,
895                                  "type" : "string",
896                                  "typetext" : "<string>"
897                               },
898                               "type" : {
899                                  "description" : "Rule type.",
900                                  "enum" : [
901                                     "in",
902                                     "out",
903                                     "group"
904                                  ],
905                                  "optional" : 0,
906                                  "type" : "string"
907                               }
908                            }
909                         },
910                         "permissions" : {
911                            "check" : [
912                               "perm",
913                               "/",
914                               [
915                                  "Sys.Modify"
916                               ]
917                            ]
918                         },
919                         "protected" : 1,
920                         "proxyto" : null,
921                         "returns" : {
922                            "type" : "null"
923                         }
924                      }
925                   },
926                   "leaf" : 0,
927                   "path" : "/cluster/firewall/rules",
928                   "text" : "rules"
929                },
930                {
931                   "children" : [
932                      {
933                         "children" : [
934                            {
935                               "info" : {
936                                  "DELETE" : {
937                                     "description" : "Remove IP or Network from IPSet.",
938                                     "method" : "DELETE",
939                                     "name" : "remove_ip",
940                                     "parameters" : {
941                                        "additionalProperties" : 0,
942                                        "properties" : {
943                                           "cidr" : {
944                                              "description" : "Network/IP specification in CIDR format.",
945                                              "format" : "IPorCIDRorAlias",
946                                              "type" : "string",
947                                              "typetext" : "<string>"
948                                           },
949                                           "digest" : {
950                                              "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
951                                              "maxLength" : 40,
952                                              "optional" : 1,
953                                              "type" : "string",
954                                              "typetext" : "<string>"
955                                           },
956                                           "name" : {
957                                              "description" : "IP set name.",
958                                              "maxLength" : 64,
959                                              "minLength" : 2,
960                                              "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
961                                              "type" : "string"
962                                           }
963                                        }
964                                     },
965                                     "permissions" : {
966                                        "check" : [
967                                           "perm",
968                                           "/",
969                                           [
970                                              "Sys.Modify"
971                                           ]
972                                        ]
973                                     },
974                                     "protected" : 1,
975                                     "returns" : {
976                                        "type" : "null"
977                                     }
978                                  },
979                                  "GET" : {
980                                     "description" : "Read IP or Network settings from IPSet.",
981                                     "method" : "GET",
982                                     "name" : "read_ip",
983                                     "parameters" : {
984                                        "additionalProperties" : 0,
985                                        "properties" : {
986                                           "cidr" : {
987                                              "description" : "Network/IP specification in CIDR format.",
988                                              "format" : "IPorCIDRorAlias",
989                                              "type" : "string",
990                                              "typetext" : "<string>"
991                                           },
992                                           "name" : {
993                                              "description" : "IP set name.",
994                                              "maxLength" : 64,
995                                              "minLength" : 2,
996                                              "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
997                                              "type" : "string"
998                                           }
999                                        }
1000                                     },
1001                                     "permissions" : {
1002                                        "check" : [
1003                                           "perm",
1004                                           "/",
1005                                           [
1006                                              "Sys.Audit"
1007                                           ]
1008                                        ]
1009                                     },
1010                                     "protected" : 1,
1011                                     "returns" : {
1012                                        "type" : "object"
1013                                     }
1014                                  },
1015                                  "PUT" : {
1016                                     "description" : "Update IP or Network settings",
1017                                     "method" : "PUT",
1018                                     "name" : "update_ip",
1019                                     "parameters" : {
1020                                        "additionalProperties" : 0,
1021                                        "properties" : {
1022                                           "cidr" : {
1023                                              "description" : "Network/IP specification in CIDR format.",
1024                                              "format" : "IPorCIDRorAlias",
1025                                              "type" : "string",
1026                                              "typetext" : "<string>"
1027                                           },
1028                                           "comment" : {
1029                                              "optional" : 1,
1030                                              "type" : "string",
1031                                              "typetext" : "<string>"
1032                                           },
1033                                           "digest" : {
1034                                              "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
1035                                              "maxLength" : 40,
1036                                              "optional" : 1,
1037                                              "type" : "string",
1038                                              "typetext" : "<string>"
1039                                           },
1040                                           "name" : {
1041                                              "description" : "IP set name.",
1042                                              "maxLength" : 64,
1043                                              "minLength" : 2,
1044                                              "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1045                                              "type" : "string"
1046                                           },
1047                                           "nomatch" : {
1048                                              "optional" : 1,
1049                                              "type" : "boolean",
1050                                              "typetext" : "<boolean>"
1051                                           }
1052                                        }
1053                                     },
1054                                     "permissions" : {
1055                                        "check" : [
1056                                           "perm",
1057                                           "/",
1058                                           [
1059                                              "Sys.Modify"
1060                                           ]
1061                                        ]
1062                                     },
1063                                     "protected" : 1,
1064                                     "returns" : {
1065                                        "type" : "null"
1066                                     }
1067                                  }
1068                               },
1069                               "leaf" : 1,
1070                               "path" : "/cluster/firewall/ipset/{name}/{cidr}",
1071                               "text" : "{cidr}"
1072                            }
1073                         ],
1074                         "info" : {
1075                            "DELETE" : {
1076                               "description" : "Delete IPSet",
1077                               "method" : "DELETE",
1078                               "name" : "delete_ipset",
1079                               "parameters" : {
1080                                  "additionalProperties" : 0,
1081                                  "properties" : {
1082                                     "name" : {
1083                                        "description" : "IP set name.",
1084                                        "maxLength" : 64,
1085                                        "minLength" : 2,
1086                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1087                                        "type" : "string"
1088                                     }
1089                                  }
1090                               },
1091                               "permissions" : {
1092                                  "check" : [
1093                                     "perm",
1094                                     "/",
1095                                     [
1096                                        "Sys.Modify"
1097                                     ]
1098                                  ]
1099                               },
1100                               "protected" : 1,
1101                               "returns" : {
1102                                  "type" : "null"
1103                               }
1104                            },
1105                            "GET" : {
1106                               "description" : "List IPSet content",
1107                               "method" : "GET",
1108                               "name" : "get_ipset",
1109                               "parameters" : {
1110                                  "additionalProperties" : 0,
1111                                  "properties" : {
1112                                     "name" : {
1113                                        "description" : "IP set name.",
1114                                        "maxLength" : 64,
1115                                        "minLength" : 2,
1116                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1117                                        "type" : "string"
1118                                     }
1119                                  }
1120                               },
1121                               "permissions" : {
1122                                  "check" : [
1123                                     "perm",
1124                                     "/",
1125                                     [
1126                                        "Sys.Audit"
1127                                     ]
1128                                  ]
1129                               },
1130                               "returns" : {
1131                                  "items" : {
1132                                     "properties" : {
1133                                        "cidr" : {
1134                                           "type" : "string"
1135                                        },
1136                                        "comment" : {
1137                                           "optional" : 1,
1138                                           "type" : "string"
1139                                        },
1140                                        "digest" : {
1141                                           "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
1142                                           "maxLength" : 40,
1143                                           "optional" : 0,
1144                                           "type" : "string"
1145                                        },
1146                                        "nomatch" : {
1147                                           "optional" : 1,
1148                                           "type" : "boolean"
1149                                        }
1150                                     },
1151                                     "type" : "object"
1152                                  },
1153                                  "links" : [
1154                                     {
1155                                        "href" : "{cidr}",
1156                                        "rel" : "child"
1157                                     }
1158                                  ],
1159                                  "type" : "array"
1160                               }
1161                            },
1162                            "POST" : {
1163                               "description" : "Add IP or Network to IPSet.",
1164                               "method" : "POST",
1165                               "name" : "create_ip",
1166                               "parameters" : {
1167                                  "additionalProperties" : 0,
1168                                  "properties" : {
1169                                     "cidr" : {
1170                                        "description" : "Network/IP specification in CIDR format.",
1171                                        "format" : "IPorCIDRorAlias",
1172                                        "type" : "string",
1173                                        "typetext" : "<string>"
1174                                     },
1175                                     "comment" : {
1176                                        "optional" : 1,
1177                                        "type" : "string",
1178                                        "typetext" : "<string>"
1179                                     },
1180                                     "name" : {
1181                                        "description" : "IP set name.",
1182                                        "maxLength" : 64,
1183                                        "minLength" : 2,
1184                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1185                                        "type" : "string"
1186                                     },
1187                                     "nomatch" : {
1188                                        "optional" : 1,
1189                                        "type" : "boolean",
1190                                        "typetext" : "<boolean>"
1191                                     }
1192                                  }
1193                               },
1194                               "permissions" : {
1195                                  "check" : [
1196                                     "perm",
1197                                     "/",
1198                                     [
1199                                        "Sys.Modify"
1200                                     ]
1201                                  ]
1202                               },
1203                               "protected" : 1,
1204                               "returns" : {
1205                                  "type" : "null"
1206                               }
1207                            }
1208                         },
1209                         "leaf" : 0,
1210                         "path" : "/cluster/firewall/ipset/{name}",
1211                         "text" : "{name}"
1212                      }
1213                   ],
1214                   "info" : {
1215                      "GET" : {
1216                         "description" : "List IPSets",
1217                         "method" : "GET",
1218                         "name" : "ipset_index",
1219                         "parameters" : {
1220                            "additionalProperties" : 0
1221                         },
1222                         "permissions" : {
1223                            "check" : [
1224                               "perm",
1225                               "/",
1226                               [
1227                                  "Sys.Audit"
1228                               ]
1229                            ]
1230                         },
1231                         "returns" : {
1232                            "items" : {
1233                               "properties" : {
1234                                  "comment" : {
1235                                     "optional" : 1,
1236                                     "type" : "string"
1237                                  },
1238                                  "digest" : {
1239                                     "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
1240                                     "maxLength" : 40,
1241                                     "optional" : 0,
1242                                     "type" : "string"
1243                                  },
1244                                  "name" : {
1245                                     "description" : "IP set name.",
1246                                     "maxLength" : 64,
1247                                     "minLength" : 2,
1248                                     "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1249                                     "type" : "string"
1250                                  }
1251                               },
1252                               "type" : "object"
1253                            },
1254                            "links" : [
1255                               {
1256                                  "href" : "{name}",
1257                                  "rel" : "child"
1258                               }
1259                            ],
1260                            "type" : "array"
1261                         }
1262                      },
1263                      "POST" : {
1264                         "description" : "Create new IPSet",
1265                         "method" : "POST",
1266                         "name" : "create_ipset",
1267                         "parameters" : {
1268                            "additionalProperties" : 0,
1269                            "properties" : {
1270                               "comment" : {
1271                                  "optional" : 1,
1272                                  "type" : "string",
1273                                  "typetext" : "<string>"
1274                               },
1275                               "digest" : {
1276                                  "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
1277                                  "maxLength" : 40,
1278                                  "optional" : 1,
1279                                  "type" : "string",
1280                                  "typetext" : "<string>"
1281                               },
1282                               "name" : {
1283                                  "description" : "IP set name.",
1284                                  "maxLength" : 64,
1285                                  "minLength" : 2,
1286                                  "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1287                                  "type" : "string"
1288                               },
1289                               "rename" : {
1290                                  "description" : "Rename an existing IPSet. You can set 'rename' to the same value as 'name' to update the 'comment' of an existing IPSet.",
1291                                  "maxLength" : 64,
1292                                  "minLength" : 2,
1293                                  "optional" : 1,
1294                                  "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1295                                  "type" : "string"
1296                               }
1297                            }
1298                         },
1299                         "permissions" : {
1300                            "check" : [
1301                               "perm",
1302                               "/",
1303                               [
1304                                  "Sys.Modify"
1305                               ]
1306                            ]
1307                         },
1308                         "protected" : 1,
1309                         "returns" : {
1310                            "type" : "null"
1311                         }
1312                      }
1313                   },
1314                   "leaf" : 0,
1315                   "path" : "/cluster/firewall/ipset",
1316                   "text" : "ipset"
1317                },
1318                {
1319                   "children" : [
1320                      {
1321                         "info" : {
1322                            "DELETE" : {
1323                               "description" : "Remove IP or Network alias.",
1324                               "method" : "DELETE",
1325                               "name" : "remove_alias",
1326                               "parameters" : {
1327                                  "additionalProperties" : 0,
1328                                  "properties" : {
1329                                     "digest" : {
1330                                        "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
1331                                        "maxLength" : 40,
1332                                        "optional" : 1,
1333                                        "type" : "string",
1334                                        "typetext" : "<string>"
1335                                     },
1336                                     "name" : {
1337                                        "description" : "Alias name.",
1338                                        "maxLength" : 64,
1339                                        "minLength" : 2,
1340                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1341                                        "type" : "string"
1342                                     }
1343                                  }
1344                               },
1345                               "permissions" : {
1346                                  "check" : [
1347                                     "perm",
1348                                     "/",
1349                                     [
1350                                        "Sys.Modify"
1351                                     ]
1352                                  ]
1353                               },
1354                               "protected" : 1,
1355                               "returns" : {
1356                                  "type" : "null"
1357                               }
1358                            },
1359                            "GET" : {
1360                               "description" : "Read alias.",
1361                               "method" : "GET",
1362                               "name" : "read_alias",
1363                               "parameters" : {
1364                                  "additionalProperties" : 0,
1365                                  "properties" : {
1366                                     "name" : {
1367                                        "description" : "Alias name.",
1368                                        "maxLength" : 64,
1369                                        "minLength" : 2,
1370                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1371                                        "type" : "string"
1372                                     }
1373                                  }
1374                               },
1375                               "permissions" : {
1376                                  "check" : [
1377                                     "perm",
1378                                     "/",
1379                                     [
1380                                        "Sys.Audit"
1381                                     ]
1382                                  ]
1383                               },
1384                               "returns" : {
1385                                  "type" : "object"
1386                               }
1387                            },
1388                            "PUT" : {
1389                               "description" : "Update IP or Network alias.",
1390                               "method" : "PUT",
1391                               "name" : "update_alias",
1392                               "parameters" : {
1393                                  "additionalProperties" : 0,
1394                                  "properties" : {
1395                                     "cidr" : {
1396                                        "description" : "Network/IP specification in CIDR format.",
1397                                        "format" : "IPorCIDR",
1398                                        "type" : "string",
1399                                        "typetext" : "<string>"
1400                                     },
1401                                     "comment" : {
1402                                        "optional" : 1,
1403                                        "type" : "string",
1404                                        "typetext" : "<string>"
1405                                     },
1406                                     "digest" : {
1407                                        "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
1408                                        "maxLength" : 40,
1409                                        "optional" : 1,
1410                                        "type" : "string",
1411                                        "typetext" : "<string>"
1412                                     },
1413                                     "name" : {
1414                                        "description" : "Alias name.",
1415                                        "maxLength" : 64,
1416                                        "minLength" : 2,
1417                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1418                                        "type" : "string"
1419                                     },
1420                                     "rename" : {
1421                                        "description" : "Rename an existing alias.",
1422                                        "maxLength" : 64,
1423                                        "minLength" : 2,
1424                                        "optional" : 1,
1425                                        "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1426                                        "type" : "string"
1427                                     }
1428                                  }
1429                               },
1430                               "permissions" : {
1431                                  "check" : [
1432                                     "perm",
1433                                     "/",
1434                                     [
1435                                        "Sys.Modify"
1436                                     ]
1437                                  ]
1438                               },
1439                               "protected" : 1,
1440                               "returns" : {
1441                                  "type" : "null"
1442                               }
1443                            }
1444                         },
1445                         "leaf" : 1,
1446                         "path" : "/cluster/firewall/aliases/{name}",
1447                         "text" : "{name}"
1448                      }
1449                   ],
1450                   "info" : {
1451                      "GET" : {
1452                         "description" : "List aliases",
1453                         "method" : "GET",
1454                         "name" : "get_aliases",
1455                         "parameters" : {
1456                            "additionalProperties" : 0
1457                         },
1458                         "permissions" : {
1459                            "check" : [
1460                               "perm",
1461                               "/",
1462                               [
1463                                  "Sys.Audit"
1464                               ]
1465                            ]
1466                         },
1467                         "returns" : {
1468                            "items" : {
1469                               "properties" : {
1470                                  "cidr" : {
1471                                     "type" : "string"
1472                                  },
1473                                  "comment" : {
1474                                     "optional" : 1,
1475                                     "type" : "string"
1476                                  },
1477                                  "digest" : {
1478                                     "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
1479                                     "maxLength" : 40,
1480                                     "optional" : 0,
1481                                     "type" : "string"
1482                                  },
1483                                  "name" : {
1484                                     "type" : "string"
1485                                  }
1486                               },
1487                               "type" : "object"
1488                            },
1489                            "links" : [
1490                               {
1491                                  "href" : "{name}",
1492                                  "rel" : "child"
1493                               }
1494                            ],
1495                            "type" : "array"
1496                         }
1497                      },
1498                      "POST" : {
1499                         "description" : "Create IP or Network Alias.",
1500                         "method" : "POST",
1501                         "name" : "create_alias",
1502                         "parameters" : {
1503                            "additionalProperties" : 0,
1504                            "properties" : {
1505                               "cidr" : {
1506                                  "description" : "Network/IP specification in CIDR format.",
1507                                  "format" : "IPorCIDR",
1508                                  "type" : "string",
1509                                  "typetext" : "<string>"
1510                               },
1511                               "comment" : {
1512                                  "optional" : 1,
1513                                  "type" : "string",
1514                                  "typetext" : "<string>"
1515                               },
1516                               "name" : {
1517                                  "description" : "Alias name.",
1518                                  "maxLength" : 64,
1519                                  "minLength" : 2,
1520                                  "pattern" : "[A-Za-z][A-Za-z0-9\\-\\_]+",
1521                                  "type" : "string"
1522                               }
1523                            }
1524                         },
1525                         "permissions" : {
1526                            "check" : [
1527                               "perm",
1528                               "/",
1529                               [
1530                                  "Sys.Modify"
1531                               ]
1532                            ]
1533                         },
1534                         "protected" : 1,
1535                         "returns" : {
1536                            "type" : "null"
1537                         }
1538                      }
1539                   },
1540                   "leaf" : 0,
1541                   "path" : "/cluster/firewall/aliases",
1542                   "text" : "aliases"
1543                },
1544                {
1545                   "info" : {
1546                      "GET" : {
1547                         "description" : "Get Firewall options.",
1548                         "method" : "GET",
1549                         "name" : "get_options",
1550                         "parameters" : {
1551                            "additionalProperties" : 0
1552                         },
1553                         "permissions" : {
1554                            "check" : [
1555                               "perm",
1556                               "/",
1557                               [
1558                                  "Sys.Audit"
1559                               ]
1560                            ]
1561                         },
1562                         "returns" : {
1563                            "properties" : {
1564                               "enable" : {
1565                                  "description" : "Enable or disable the firewall cluster wide.",
1566                                  "minimum" : 0,
1567                                  "optional" : 1,
1568                                  "type" : "integer"
1569                               },
1570                               "policy_in" : {
1571                                  "description" : "Input policy.",
1572                                  "enum" : [
1573                                     "ACCEPT",
1574                                     "REJECT",
1575                                     "DROP"
1576                                  ],
1577                                  "optional" : 1,
1578                                  "type" : "string"
1579                               },
1580                               "policy_out" : {
1581                                  "description" : "Output policy.",
1582                                  "enum" : [
1583                                     "ACCEPT",
1584                                     "REJECT",
1585                                     "DROP"
1586                                  ],
1587                                  "optional" : 1,
1588                                  "type" : "string"
1589                               }
1590                            },
1591                            "type" : "object"
1592                         }
1593                      },
1594                      "PUT" : {
1595                         "description" : "Set Firewall options.",
1596                         "method" : "PUT",
1597                         "name" : "set_options",
1598                         "parameters" : {
1599                            "additionalProperties" : 0,
1600                            "properties" : {
1601                               "delete" : {
1602                                  "description" : "A list of settings you want to delete.",
1603                                  "format" : "pve-configid-list",
1604                                  "optional" : 1,
1605                                  "type" : "string",
1606                                  "typetext" : "<string>"
1607                               },
1608                               "digest" : {
1609                                  "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
1610                                  "maxLength" : 40,
1611                                  "optional" : 1,
1612                                  "type" : "string",
1613                                  "typetext" : "<string>"
1614                               },
1615                               "enable" : {
1616                                  "description" : "Enable or disable the firewall cluster wide.",
1617                                  "minimum" : 0,
1618                                  "optional" : 1,
1619                                  "type" : "integer",
1620                                  "typetext" : "<integer> (0 - N)"
1621                               },
1622                               "policy_in" : {
1623                                  "description" : "Input policy.",
1624                                  "enum" : [
1625                                     "ACCEPT",
1626                                     "REJECT",
1627                                     "DROP"
1628                                  ],
1629                                  "optional" : 1,
1630                                  "type" : "string"
1631                               },
1632                               "policy_out" : {
1633                                  "description" : "Output policy.",
1634                                  "enum" : [
1635                                     "ACCEPT",
1636                                     "REJECT",
1637                                     "DROP"
1638                                  ],
1639                                  "optional" : 1,
1640                                  "type" : "string"
1641                               }
1642                            }
1643                         },
1644                         "permissions" : {
1645                            "check" : [
1646                               "perm",
1647                               "/",
1648                               [
1649                                  "Sys.Modify"
1650                               ]
1651                            ]
1652                         },
1653                         "protected" : 1,
1654                         "returns" : {
1655                            "type" : "null"
1656                         }
1657                      }
1658                   },
1659                   "leaf" : 1,
1660                   "path" : "/cluster/firewall/options",
1661                   "text" : "options"
1662                },
1663                {
1664                   "info" : {
1665                      "GET" : {
1666                         "description" : "List available macros",
1667                         "method" : "GET",
1668                         "name" : "get_macros",
1669                         "parameters" : {
1670                            "additionalProperties" : 0
1671                         },
1672                         "permissions" : {
1673                            "user" : "all"
1674                         },
1675                         "returns" : {
1676                            "items" : {
1677                               "properties" : {
1678                                  "descr" : {
1679                                     "description" : "More verbose description (if available).",
1680                                     "type" : "string"
1681                                  },
1682                                  "macro" : {
1683                                     "description" : "Macro name.",
1684                                     "type" : "string"
1685                                  }
1686                               },
1687                               "type" : "object"
1688                            },
1689                            "type" : "array"
1690                         }
1691                      }
1692                   },
1693                   "leaf" : 1,
1694                   "path" : "/cluster/firewall/macros",
1695                   "text" : "macros"
1696                },
1697                {
1698                   "info" : {
1699                      "GET" : {
1700                         "description" : "Lists possible IPSet/Alias reference which are allowed in source/dest properties.",
1701                         "method" : "GET",
1702                         "name" : "refs",
1703                         "parameters" : {
1704                            "additionalProperties" : 0,
1705                            "properties" : {
1706                               "type" : {
1707                                  "description" : "Only list references of specified type.",
1708                                  "enum" : [
1709                                     "alias",
1710                                     "ipset"
1711                                  ],
1712                                  "optional" : 1,
1713                                  "type" : "string"
1714                               }
1715                            }
1716                         },
1717                         "permissions" : {
1718                            "check" : [
1719                               "perm",
1720                               "/",
1721                               [
1722                                  "Sys.Audit"
1723                               ]
1724                            ]
1725                         },
1726                         "returns" : {
1727                            "items" : {
1728                               "properties" : {
1729                                  "comment" : {
1730                                     "optional" : 1,
1731                                     "type" : "string"
1732                                  },
1733                                  "name" : {
1734                                     "type" : "string"
1735                                  },
1736                                  "ref" : {
1737                                     "type" : "string"
1738                                  },
1739                                  "type" : {
1740                                     "enum" : [
1741                                        "alias",
1742                                        "ipset"
1743                                     ],
1744                                     "type" : "string"
1745                                  }
1746                               },
1747                               "type" : "object"
1748                            },
1749                            "type" : "array"
1750                         }
1751                      }
1752                   },
1753                   "leaf" : 1,
1754                   "path" : "/cluster/firewall/refs",
1755                   "text" : "refs"
1756                }
1757             ],
1758             "info" : {
1759                "GET" : {
1760                   "description" : "Directory index.",
1761                   "method" : "GET",
1762                   "name" : "index",
1763                   "parameters" : {
1764                      "additionalProperties" : 0
1765                   },
1766                   "permissions" : {
1767                      "user" : "all"
1768                   },
1769                   "returns" : {
1770                      "items" : {
1771                         "properties" : {},
1772                         "type" : "object"
1773                      },
1774                      "links" : [
1775                         {
1776                            "href" : "{name}",
1777                            "rel" : "child"
1778                         }
1779                      ],
1780                      "type" : "array"
1781                   }
1782                }
1783             },
1784             "leaf" : 0,
1785             "path" : "/cluster/firewall",
1786             "text" : "firewall"
1787          },
1788          {
1789             "children" : [
1790                {
1791                   "info" : {
1792                      "DELETE" : {
1793                         "description" : "Delete vzdump backup job definition.",
1794                         "method" : "DELETE",
1795                         "name" : "delete_job",
1796                         "parameters" : {
1797                            "additionalProperties" : 0,
1798                            "properties" : {
1799                               "id" : {
1800                                  "description" : "The job ID.",
1801                                  "maxLength" : 50,
1802                                  "type" : "string",
1803                                  "typetext" : "<string>"
1804                               }
1805                            }
1806                         },
1807                         "permissions" : {
1808                            "check" : [
1809                               "perm",
1810                               "/",
1811                               [
1812                                  "Sys.Modify"
1813                               ]
1814                            ]
1815                         },
1816                         "protected" : 1,
1817                         "returns" : {
1818                            "type" : "null"
1819                         }
1820                      },
1821                      "GET" : {
1822                         "description" : "Read vzdump backup job definition.",
1823                         "method" : "GET",
1824                         "name" : "read_job",
1825                         "parameters" : {
1826                            "additionalProperties" : 0,
1827                            "properties" : {
1828                               "id" : {
1829                                  "description" : "The job ID.",
1830                                  "maxLength" : 50,
1831                                  "type" : "string",
1832                                  "typetext" : "<string>"
1833                               }
1834                            }
1835                         },
1836                         "permissions" : {
1837                            "check" : [
1838                               "perm",
1839                               "/",
1840                               [
1841                                  "Sys.Audit"
1842                               ]
1843                            ]
1844                         },
1845                         "returns" : {
1846                            "type" : "object"
1847                         }
1848                      },
1849                      "PUT" : {
1850                         "description" : "Update vzdump backup job definition.",
1851                         "method" : "PUT",
1852                         "name" : "update_job",
1853                         "parameters" : {
1854                            "additionalProperties" : 0,
1855                            "properties" : {
1856                               "all" : {
1857                                  "default" : 0,
1858                                  "description" : "Backup all known guest systems on this host.",
1859                                  "optional" : 1,
1860                                  "type" : "boolean",
1861                                  "typetext" : "<boolean>"
1862                               },
1863                               "bwlimit" : {
1864                                  "default" : 0,
1865                                  "description" : "Limit I/O bandwidth (KBytes per second).",
1866                                  "minimum" : 0,
1867                                  "optional" : 1,
1868                                  "type" : "integer",
1869                                  "typetext" : "<integer> (0 - N)"
1870                               },
1871                               "compress" : {
1872                                  "default" : "0",
1873                                  "description" : "Compress dump file.",
1874                                  "enum" : [
1875                                     "0",
1876                                     "1",
1877                                     "gzip",
1878                                     "lzo"
1879                                  ],
1880                                  "optional" : 1,
1881                                  "type" : "string"
1882                               },
1883                               "delete" : {
1884                                  "description" : "A list of settings you want to delete.",
1885                                  "format" : "pve-configid-list",
1886                                  "optional" : 1,
1887                                  "type" : "string",
1888                                  "typetext" : "<string>"
1889                               },
1890                               "dow" : {
1891                                  "description" : "Day of week selection.",
1892                                  "format" : "pve-day-of-week-list",
1893                                  "optional" : 1,
1894                                  "type" : "string",
1895                                  "typetext" : "<string>"
1896                               },
1897                               "dumpdir" : {
1898                                  "description" : "Store resulting files to specified directory.",
1899                                  "optional" : 1,
1900                                  "type" : "string",
1901                                  "typetext" : "<string>"
1902                               },
1903                               "enabled" : {
1904                                  "default" : "1",
1905                                  "description" : "Enable or disable the job.",
1906                                  "optional" : 1,
1907                                  "type" : "boolean",
1908                                  "typetext" : "<boolean>"
1909                               },
1910                               "exclude" : {
1911                                  "description" : "Exclude specified guest systems (assumes --all)",
1912                                  "format" : "pve-vmid-list",
1913                                  "optional" : 1,
1914                                  "type" : "string",
1915                                  "typetext" : "<string>"
1916                               },
1917                               "exclude-path" : {
1918                                  "description" : "Exclude certain files/directories (shell globs).",
1919                                  "format" : "string-alist",
1920                                  "optional" : 1,
1921                                  "type" : "string",
1922                                  "typetext" : "<string>"
1923                               },
1924                               "id" : {
1925                                  "description" : "The job ID.",
1926                                  "maxLength" : 50,
1927                                  "type" : "string",
1928                                  "typetext" : "<string>"
1929                               },
1930                               "ionice" : {
1931                                  "default" : 7,
1932                                  "description" : "Set CFQ ionice priority.",
1933                                  "maximum" : 8,
1934                                  "minimum" : 0,
1935                                  "optional" : 1,
1936                                  "type" : "integer",
1937                                  "typetext" : "<integer> (0 - 8)"
1938                               },
1939                               "lockwait" : {
1940                                  "default" : 180,
1941                                  "description" : "Maximal time to wait for the global lock (minutes).",
1942                                  "minimum" : 0,
1943                                  "optional" : 1,
1944                                  "type" : "integer",
1945                                  "typetext" : "<integer> (0 - N)"
1946                               },
1947                               "mailnotification" : {
1948                                  "default" : "always",
1949                                  "description" : "Specify when to send an email",
1950                                  "enum" : [
1951                                     "always",
1952                                     "failure"
1953                                  ],
1954                                  "optional" : 1,
1955                                  "type" : "string"
1956                               },
1957                               "mailto" : {
1958                                  "description" : "Comma-separated list of email addresses that should receive email notifications.",
1959                                  "format" : "string-list",
1960                                  "optional" : 1,
1961                                  "type" : "string",
1962                                  "typetext" : "<string>"
1963                               },
1964                               "maxfiles" : {
1965                                  "default" : 1,
1966                                  "description" : "Maximal number of backup files per guest system.",
1967                                  "minimum" : 1,
1968                                  "optional" : 1,
1969                                  "type" : "integer",
1970                                  "typetext" : "<integer> (1 - N)"
1971                               },
1972                               "mode" : {
1973                                  "default" : "snapshot",
1974                                  "description" : "Backup mode.",
1975                                  "enum" : [
1976                                     "snapshot",
1977                                     "suspend",
1978                                     "stop"
1979                                  ],
1980                                  "optional" : 1,
1981                                  "type" : "string"
1982                               },
1983                               "node" : {
1984                                  "description" : "Only run if executed on this node.",
1985                                  "format" : "pve-node",
1986                                  "optional" : 1,
1987                                  "type" : "string",
1988                                  "typetext" : "<string>"
1989                               },
1990                               "pigz" : {
1991                                  "default" : 0,
1992                                  "description" : "Use pigz instead of gzip when N>0. N=1 uses half of cores, N>1 uses N as thread count.",
1993                                  "optional" : 1,
1994                                  "type" : "integer",
1995                                  "typetext" : "<integer>"
1996                               },
1997                               "quiet" : {
1998                                  "default" : 0,
1999                                  "description" : "Be quiet.",
2000                                  "optional" : 1,
2001                                  "type" : "boolean",
2002                                  "typetext" : "<boolean>"
2003                               },
2004                               "remove" : {
2005                                  "default" : 1,
2006                                  "description" : "Remove old backup files if there are more than 'maxfiles' backup files.",
2007                                  "optional" : 1,
2008                                  "type" : "boolean",
2009                                  "typetext" : "<boolean>"
2010                               },
2011                               "script" : {
2012                                  "description" : "Use specified hook script.",
2013                                  "optional" : 1,
2014                                  "type" : "string",
2015                                  "typetext" : "<string>"
2016                               },
2017                               "size" : {
2018                                  "default" : 1024,
2019                                  "description" : "Unused, will be removed in a future release.",
2020                                  "minimum" : 500,
2021                                  "optional" : 1,
2022                                  "type" : "integer",
2023                                  "typetext" : "<integer> (500 - N)"
2024                               },
2025                               "starttime" : {
2026                                  "description" : "Job Start time.",
2027                                  "pattern" : "\\d{1,2}:\\d{1,2}",
2028                                  "type" : "string",
2029                                  "typetext" : "HH:MM"
2030                               },
2031                               "stdexcludes" : {
2032                                  "default" : 1,
2033                                  "description" : "Exclude temporary files and logs.",
2034                                  "optional" : 1,
2035                                  "type" : "boolean",
2036                                  "typetext" : "<boolean>"
2037                               },
2038                               "stop" : {
2039                                  "default" : 0,
2040                                  "description" : "Stop runnig backup jobs on this host.",
2041                                  "optional" : 1,
2042                                  "type" : "boolean",
2043                                  "typetext" : "<boolean>"
2044                               },
2045                               "stopwait" : {
2046                                  "default" : 10,
2047                                  "description" : "Maximal time to wait until a guest system is stopped (minutes).",
2048                                  "minimum" : 0,
2049                                  "optional" : 1,
2050                                  "type" : "integer",
2051                                  "typetext" : "<integer> (0 - N)"
2052                               },
2053                               "storage" : {
2054                                  "description" : "Store resulting file to this storage.",
2055                                  "format" : "pve-storage-id",
2056                                  "optional" : 1,
2057                                  "type" : "string",
2058                                  "typetext" : "<string>"
2059                               },
2060                               "tmpdir" : {
2061                                  "description" : "Store temporary files to specified directory.",
2062                                  "optional" : 1,
2063                                  "type" : "string",
2064                                  "typetext" : "<string>"
2065                               },
2066                               "vmid" : {
2067                                  "description" : "The ID of the guest system you want to backup.",
2068                                  "format" : "pve-vmid-list",
2069                                  "optional" : 1,
2070                                  "type" : "string",
2071                                  "typetext" : "<string>"
2072                               }
2073                            }
2074                         },
2075                         "permissions" : {
2076                            "check" : [
2077                               "perm",
2078                               "/",
2079                               [
2080                                  "Sys.Modify"
2081                               ]
2082                            ]
2083                         },
2084                         "protected" : 1,
2085                         "returns" : {
2086                            "type" : "null"
2087                         }
2088                      }
2089                   },
2090                   "leaf" : 1,
2091                   "path" : "/cluster/backup/{id}",
2092                   "text" : "{id}"
2093                }
2094             ],
2095             "info" : {
2096                "GET" : {
2097                   "description" : "List vzdump backup schedule.",
2098                   "method" : "GET",
2099                   "name" : "index",
2100                   "parameters" : {
2101                      "additionalProperties" : 0
2102                   },
2103                   "permissions" : {
2104                      "check" : [
2105                         "perm",
2106                         "/",
2107                         [
2108                            "Sys.Audit"
2109                         ]
2110                      ]
2111                   },
2112                   "returns" : {
2113                      "items" : {
2114                         "properties" : {
2115                            "id" : {
2116                               "type" : "string"
2117                            }
2118                         },
2119                         "type" : "object"
2120                      },
2121                      "links" : [
2122                         {
2123                            "href" : "{id}",
2124                            "rel" : "child"
2125                         }
2126                      ],
2127                      "type" : "array"
2128                   }
2129                },
2130                "POST" : {
2131                   "description" : "Create new vzdump backup job.",
2132                   "method" : "POST",
2133                   "name" : "create_job",
2134                   "parameters" : {
2135                      "additionalProperties" : 0,
2136                      "properties" : {
2137                         "all" : {
2138                            "default" : 0,
2139                            "description" : "Backup all known guest systems on this host.",
2140                            "optional" : 1,
2141                            "type" : "boolean",
2142                            "typetext" : "<boolean>"
2143                         },
2144                         "bwlimit" : {
2145                            "default" : 0,
2146                            "description" : "Limit I/O bandwidth (KBytes per second).",
2147                            "minimum" : 0,
2148                            "optional" : 1,
2149                            "type" : "integer",
2150                            "typetext" : "<integer> (0 - N)"
2151                         },
2152                         "compress" : {
2153                            "default" : "0",
2154                            "description" : "Compress dump file.",
2155                            "enum" : [
2156                               "0",
2157                               "1",
2158                               "gzip",
2159                               "lzo"
2160                            ],
2161                            "optional" : 1,
2162                            "type" : "string"
2163                         },
2164                         "dow" : {
2165                            "default" : "mon,tue,wed,thu,fri,sat,sun",
2166                            "description" : "Day of week selection.",
2167                            "format" : "pve-day-of-week-list",
2168                            "optional" : 1,
2169                            "type" : "string",
2170                            "typetext" : "<string>"
2171                         },
2172                         "dumpdir" : {
2173                            "description" : "Store resulting files to specified directory.",
2174                            "optional" : 1,
2175                            "type" : "string",
2176                            "typetext" : "<string>"
2177                         },
2178                         "enabled" : {
2179                            "default" : "1",
2180                            "description" : "Enable or disable the job.",
2181                            "optional" : 1,
2182                            "type" : "boolean",
2183                            "typetext" : "<boolean>"
2184                         },
2185                         "exclude" : {
2186                            "description" : "Exclude specified guest systems (assumes --all)",
2187                            "format" : "pve-vmid-list",
2188                            "optional" : 1,
2189                            "type" : "string",
2190                            "typetext" : "<string>"
2191                         },
2192                         "exclude-path" : {
2193                            "description" : "Exclude certain files/directories (shell globs).",
2194                            "format" : "string-alist",
2195                            "optional" : 1,
2196                            "type" : "string",
2197                            "typetext" : "<string>"
2198                         },
2199                         "ionice" : {
2200                            "default" : 7,
2201                            "description" : "Set CFQ ionice priority.",
2202                            "maximum" : 8,
2203                            "minimum" : 0,
2204                            "optional" : 1,
2205                            "type" : "integer",
2206                            "typetext" : "<integer> (0 - 8)"
2207                         },
2208                         "lockwait" : {
2209                            "default" : 180,
2210                            "description" : "Maximal time to wait for the global lock (minutes).",
2211                            "minimum" : 0,
2212                            "optional" : 1,
2213                            "type" : "integer",
2214                            "typetext" : "<integer> (0 - N)"
2215                         },
2216                         "mailnotification" : {
2217                            "default" : "always",
2218                            "description" : "Specify when to send an email",
2219                            "enum" : [
2220                               "always",
2221                               "failure"
2222                            ],
2223                            "optional" : 1,
2224                            "type" : "string"
2225                         },
2226                         "mailto" : {
2227                            "description" : "Comma-separated list of email addresses that should receive email notifications.",
2228                            "format" : "string-list",
2229                            "optional" : 1,
2230                            "type" : "string",
2231                            "typetext" : "<string>"
2232                         },
2233                         "maxfiles" : {
2234                            "default" : 1,
2235                            "description" : "Maximal number of backup files per guest system.",
2236                            "minimum" : 1,
2237                            "optional" : 1,
2238                            "type" : "integer",
2239                            "typetext" : "<integer> (1 - N)"
2240                         },
2241                         "mode" : {
2242                            "default" : "snapshot",
2243                            "description" : "Backup mode.",
2244                            "enum" : [
2245                               "snapshot",
2246                               "suspend",
2247                               "stop"
2248                            ],
2249                            "optional" : 1,
2250                            "type" : "string"
2251                         },
2252                         "node" : {
2253                            "description" : "Only run if executed on this node.",
2254                            "format" : "pve-node",
2255                            "optional" : 1,
2256                            "type" : "string",
2257                            "typetext" : "<string>"
2258                         },
2259                         "pigz" : {
2260                            "default" : 0,
2261                            "description" : "Use pigz instead of gzip when N>0. N=1 uses half of cores, N>1 uses N as thread count.",
2262                            "optional" : 1,
2263                            "type" : "integer",
2264                            "typetext" : "<integer>"
2265                         },
2266                         "quiet" : {
2267                            "default" : 0,
2268                            "description" : "Be quiet.",
2269                            "optional" : 1,
2270                            "type" : "boolean",
2271                            "typetext" : "<boolean>"
2272                         },
2273                         "remove" : {
2274                            "default" : 1,
2275                            "description" : "Remove old backup files if there are more than 'maxfiles' backup files.",
2276                            "optional" : 1,
2277                            "type" : "boolean",
2278                            "typetext" : "<boolean>"
2279                         },
2280                         "script" : {
2281                            "description" : "Use specified hook script.",
2282                            "optional" : 1,
2283                            "type" : "string",
2284                            "typetext" : "<string>"
2285                         },
2286                         "size" : {
2287                            "default" : 1024,
2288                            "description" : "Unused, will be removed in a future release.",
2289                            "minimum" : 500,
2290                            "optional" : 1,
2291                            "type" : "integer",
2292                            "typetext" : "<integer> (500 - N)"
2293                         },
2294                         "starttime" : {
2295                            "description" : "Job Start time.",
2296                            "pattern" : "\\d{1,2}:\\d{1,2}",
2297                            "type" : "string",
2298                            "typetext" : "HH:MM"
2299                         },
2300                         "stdexcludes" : {
2301                            "default" : 1,
2302                            "description" : "Exclude temporary files and logs.",
2303                            "optional" : 1,
2304                            "type" : "boolean",
2305                            "typetext" : "<boolean>"
2306                         },
2307                         "stop" : {
2308                            "default" : 0,
2309                            "description" : "Stop runnig backup jobs on this host.",
2310                            "optional" : 1,
2311                            "type" : "boolean",
2312                            "typetext" : "<boolean>"
2313                         },
2314                         "stopwait" : {
2315                            "default" : 10,
2316                            "description" : "Maximal time to wait until a guest system is stopped (minutes).",
2317                            "minimum" : 0,
2318                            "optional" : 1,
2319                            "type" : "integer",
2320                            "typetext" : "<integer> (0 - N)"
2321                         },
2322                         "storage" : {
2323                            "description" : "Store resulting file to this storage.",
2324                            "format" : "pve-storage-id",
2325                            "optional" : 1,
2326                            "type" : "string",
2327                            "typetext" : "<string>"
2328                         },
2329                         "tmpdir" : {
2330                            "description" : "Store temporary files to specified directory.",
2331                            "optional" : 1,
2332                            "type" : "string",
2333                            "typetext" : "<string>"
2334                         },
2335                         "vmid" : {
2336                            "description" : "The ID of the guest system you want to backup.",
2337                            "format" : "pve-vmid-list",
2338                            "optional" : 1,
2339                            "type" : "string",
2340                            "typetext" : "<string>"
2341                         }
2342                      }
2343                   },
2344                   "permissions" : {
2345                      "check" : [
2346                         "perm",
2347                         "/",
2348                         [
2349                            "Sys.Modify"
2350                         ]
2351                      ],
2352                      "description" : "The 'tmpdir', 'dumpdir' and 'script' parameters are additionally restricted to the 'root@pam' user."
2353                   },
2354                   "protected" : 1,
2355                   "returns" : {
2356                      "type" : "null"
2357                   }
2358                }
2359             },
2360             "leaf" : 0,
2361             "path" : "/cluster/backup",
2362             "text" : "backup"
2363          },
2364          {
2365             "children" : [
2366                {
2367                   "children" : [
2368                      {
2369                         "children" : [
2370                            {
2371                               "info" : {
2372                                  "POST" : {
2373                                     "description" : "Request resource migration (online) to another node.",
2374                                     "method" : "POST",
2375                                     "name" : "migrate",
2376                                     "parameters" : {
2377                                        "additionalProperties" : 0,
2378                                        "properties" : {
2379                                           "node" : {
2380                                              "description" : "The cluster node name.",
2381                                              "format" : "pve-node",
2382                                              "type" : "string",
2383                                              "typetext" : "<string>"
2384                                           },
2385                                           "sid" : {
2386                                              "description" : "HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100).",
2387                                              "format" : "pve-ha-resource-or-vm-id",
2388                                              "type" : "string",
2389                                              "typetext" : "<type>:<name>"
2390                                           }
2391                                        }
2392                                     },
2393                                     "permissions" : {
2394                                        "check" : [
2395                                           "perm",
2396                                           "/",
2397                                           [
2398                                              "Sys.Console"
2399                                           ]
2400                                        ]
2401                                     },
2402                                     "protected" : 1,
2403                                     "returns" : {
2404                                        "type" : "null"
2405                                     }
2406                                  }
2407                               },
2408                               "leaf" : 1,
2409                               "path" : "/cluster/ha/resources/{sid}/migrate",
2410                               "text" : "migrate"
2411                            },
2412                            {
2413                               "info" : {
2414                                  "POST" : {
2415                                     "description" : "Request resource relocatzion to another node. This stops the service on the old node, and restarts it on the target node.",
2416                                     "method" : "POST",
2417                                     "name" : "relocate",
2418                                     "parameters" : {
2419                                        "additionalProperties" : 0,
2420                                        "properties" : {
2421                                           "node" : {
2422                                              "description" : "The cluster node name.",
2423                                              "format" : "pve-node",
2424                                              "type" : "string",
2425                                              "typetext" : "<string>"
2426                                           },
2427                                           "sid" : {
2428                                              "description" : "HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100).",
2429                                              "format" : "pve-ha-resource-or-vm-id",
2430                                              "type" : "string",
2431                                              "typetext" : "<type>:<name>"
2432                                           }
2433                                        }
2434                                     },
2435                                     "permissions" : {
2436                                        "check" : [
2437                                           "perm",
2438                                           "/",
2439                                           [
2440                                              "Sys.Console"
2441                                           ]
2442                                        ]
2443                                     },
2444                                     "protected" : 1,
2445                                     "returns" : {
2446                                        "type" : "null"
2447                                     }
2448                                  }
2449                               },
2450                               "leaf" : 1,
2451                               "path" : "/cluster/ha/resources/{sid}/relocate",
2452                               "text" : "relocate"
2453                            }
2454                         ],
2455                         "info" : {
2456                            "DELETE" : {
2457                               "description" : "Delete resource configuration.",
2458                               "method" : "DELETE",
2459                               "name" : "delete",
2460                               "parameters" : {
2461                                  "additionalProperties" : 0,
2462                                  "properties" : {
2463                                     "sid" : {
2464                                        "description" : "HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100).",
2465                                        "format" : "pve-ha-resource-or-vm-id",
2466                                        "type" : "string",
2467                                        "typetext" : "<type>:<name>"
2468                                     }
2469                                  }
2470                               },
2471                               "permissions" : {
2472                                  "check" : [
2473                                     "perm",
2474                                     "/",
2475                                     [
2476                                        "Sys.Console"
2477                                     ]
2478                                  ]
2479                               },
2480                               "protected" : 1,
2481                               "returns" : {
2482                                  "type" : "null"
2483                               }
2484                            },
2485                            "GET" : {
2486                               "description" : "Read resource configuration.",
2487                               "method" : "GET",
2488                               "name" : "read",
2489                               "parameters" : {
2490                                  "additionalProperties" : 0,
2491                                  "properties" : {
2492                                     "sid" : {
2493                                        "description" : "HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100).",
2494                                        "format" : "pve-ha-resource-or-vm-id",
2495                                        "type" : "string",
2496                                        "typetext" : "<type>:<name>"
2497                                     }
2498                                  }
2499                               },
2500                               "permissions" : {
2501                                  "check" : [
2502                                     "perm",
2503                                     "/",
2504                                     [
2505                                        "Sys.Audit"
2506                                     ]
2507                                  ]
2508                               },
2509                               "returns" : {}
2510                            },
2511                            "PUT" : {
2512                               "description" : "Update resource configuration.",
2513                               "method" : "PUT",
2514                               "name" : "update",
2515                               "parameters" : {
2516                                  "additionalProperties" : 0,
2517                                  "properties" : {
2518                                     "comment" : {
2519                                        "description" : "Description.",
2520                                        "maxLength" : 4096,
2521                                        "optional" : 1,
2522                                        "type" : "string",
2523                                        "typetext" : "<string>"
2524                                     },
2525                                     "delete" : {
2526                                        "description" : "A list of settings you want to delete.",
2527                                        "format" : "pve-configid-list",
2528                                        "maxLength" : 4096,
2529                                        "optional" : 1,
2530                                        "type" : "string",
2531                                        "typetext" : "<string>"
2532                                     },
2533                                     "digest" : {
2534                                        "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
2535                                        "maxLength" : 40,
2536                                        "optional" : 1,
2537                                        "type" : "string",
2538                                        "typetext" : "<string>"
2539                                     },
2540                                     "group" : {
2541                                        "description" : "The HA group identifier.",
2542                                        "format" : "pve-configid",
2543                                        "optional" : 1,
2544                                        "type" : "string",
2545                                        "typetext" : "<string>"
2546                                     },
2547                                     "max_relocate" : {
2548                                        "default" : 1,
2549                                        "description" : "Maximal number of service relocate tries when a service failes to start.",
2550                                        "minimum" : 0,
2551                                        "optional" : 1,
2552                                        "type" : "integer",
2553                                        "typetext" : "<integer> (0 - N)"
2554                                     },
2555                                     "max_restart" : {
2556                                        "default" : 1,
2557                                        "description" : "Maximal number of tries to restart the service on a node after its start failed.",
2558                                        "minimum" : 0,
2559                                        "optional" : 1,
2560                                        "type" : "integer",
2561                                        "typetext" : "<integer> (0 - N)"
2562                                     },
2563                                     "sid" : {
2564                                        "description" : "HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100).",
2565                                        "format" : "pve-ha-resource-or-vm-id",
2566                                        "type" : "string",
2567                                        "typetext" : "<type>:<name>"
2568                                     },
2569                                     "state" : {
2570                                        "default" : "enabled",
2571                                        "description" : "Resource state.",
2572                                        "enum" : [
2573                                           "enabled",
2574                                           "disabled"
2575                                        ],
2576                                        "optional" : 1,
2577                                        "type" : "string"
2578                                     }
2579                                  },
2580                                  "type" : "object"
2581                               },
2582                               "permissions" : {
2583                                  "check" : [
2584                                     "perm",
2585                                     "/",
2586                                     [
2587                                        "Sys.Console"
2588                                     ]
2589                                  ]
2590                               },
2591                               "protected" : 1,
2592                               "returns" : {
2593                                  "type" : "null"
2594                               }
2595                            }
2596                         },