]> git.proxmox.com Git - pmg-docs.git/blame - api-viewer/apidata.js
pmg-admin-guide.adoc: add nmap docu
[pmg-docs.git] / api-viewer / apidata.js
CommitLineData
410dc2c9
DM
1var pmgapi = [
2 {
3 "children" : [
4 {
5 "children" : [
d7cd791b
DM
6 {
7 "info" : {
8 "GET" : {
9 "description" : "Returns the rule database digest. This is used internally for cluster synchronization.",
10 "method" : "GET",
11 "name" : "ruledb_digest",
12 "parameters" : {
13 "additionalProperties" : 0
14 },
732d76e1
DM
15 "permissions" : {
16 "check" : [
17 "admin",
18 "audit"
19 ]
20 },
d7cd791b
DM
21 "returns" : {
22 "type" : "string"
23 }
24 }
25 },
26 "leaf" : 1,
27 "path" : "/config/ruledb/digest",
28 "text" : "digest"
29 },
410dc2c9 30 {
f245a28c
DM
31 "children" : [
32 {
33 "children" : [
34 {
35 "info" : {
36 "GET" : {
37 "description" : "Get common rule properties.",
38 "method" : "GET",
39 "name" : "config",
40 "parameters" : {
41 "additionalProperties" : 0,
42 "properties" : {
43 "id" : {
44 "description" : "Rule ID.",
45 "type" : "integer",
46 "typetext" : "<integer>"
47 }
48 }
49 },
732d76e1
DM
50 "permissions" : {
51 "check" : [
52 "admin",
53 "audit"
54 ]
55 },
f245a28c
DM
56 "proxyto" : "master",
57 "returns" : {
58 "properties" : {
59 "active" : {
60 "type" : "boolean"
61 },
62 "direction" : {
63 "type" : "integer"
64 },
65 "id" : {
66 "type" : "integer"
67 },
68 "name" : {
69 "type" : "string"
70 },
71 "priority" : {
72 "type" : "integer"
73 }
74 },
75 "type" : "object"
76 }
77 },
78 "PUT" : {
79 "description" : "Set rule properties.",
80 "method" : "PUT",
81 "name" : "update_config",
82 "parameters" : {
83 "additionalProperties" : 0,
84 "properties" : {
85 "active" : {
86 "description" : "Flag to activate rule.",
87 "optional" : 1,
88 "type" : "boolean",
89 "typetext" : "<boolean>"
90 },
91 "direction" : {
92 "description" : "Rule direction. Value `0` matches incomming mails, value `1` matches outgoing mails, and value `2` matches both directions.",
93 "maximum" : 2,
94 "minimum" : 0,
95 "optional" : 1,
96 "type" : "integer",
97 "typetext" : "<integer> (0 - 2)"
98 },
99 "id" : {
100 "description" : "Rule ID.",
101 "type" : "integer",
102 "typetext" : "<integer>"
103 },
104 "name" : {
105 "description" : "Rule name",
106 "optional" : 1,
107 "type" : "string",
108 "typetext" : "<string>"
109 },
110 "priority" : {
111 "description" : "Rule priotity.",
112 "maximum" : 100,
113 "minimum" : 0,
114 "optional" : 1,
115 "type" : "integer",
116 "typetext" : "<integer> (0 - 100)"
117 }
118 }
119 },
732d76e1
DM
120 "permissions" : {
121 "check" : [
122 "admin"
123 ]
124 },
f245a28c
DM
125 "protected" : 1,
126 "proxyto" : "master",
127 "returns" : {
128 "type" : "null"
129 }
130 }
131 },
132 "leaf" : 1,
133 "path" : "/config/ruledb/rules/{id}/config",
134 "text" : "config"
135 },
136 {
137 "children" : [
138 {
139 "info" : {
140 "DELETE" : {
141 "description" : "Delete group from 'from' list.",
142 "method" : "DELETE",
143 "name" : "delete_from_group",
144 "parameters" : {
145 "additionalProperties" : 0,
146 "properties" : {
147 "id" : {
148 "description" : "Rule ID.",
149 "type" : "integer",
150 "typetext" : "<integer>"
151 },
152 "ogroup" : {
153 "description" : "Groups ID.",
154 "type" : "integer",
155 "typetext" : "<integer>"
156 }
157 }
158 },
732d76e1
DM
159 "permissions" : {
160 "check" : [
161 "admin"
162 ]
163 },
f245a28c
DM
164 "protected" : 1,
165 "proxyto" : "master",
166 "returns" : {
167 "type" : "null"
168 }
169 }
170 },
171 "leaf" : 1,
172 "path" : "/config/ruledb/rules/{id}/from/{ogroup}",
173 "text" : "{ogroup}"
174 }
175 ],
176 "info" : {
177 "GET" : {
178 "description" : "Get 'from' group list.",
179 "method" : "GET",
180 "name" : "from",
181 "parameters" : {
182 "additionalProperties" : 0,
183 "properties" : {
184 "id" : {
185 "description" : "Rule ID.",
186 "type" : "integer",
187 "typetext" : "<integer>"
188 }
189 }
190 },
732d76e1
DM
191 "permissions" : {
192 "check" : [
193 "admin",
194 "audit"
195 ]
196 },
f245a28c
DM
197 "proxyto" : "master",
198 "returns" : {
199 "items" : {
200 "properties" : {
201 "id" : {
202 "type" : "integer"
203 }
204 },
205 "type" : "object"
206 },
207 "type" : "array"
208 }
209 },
210 "POST" : {
211 "description" : "Add group to 'from' list.",
212 "method" : "POST",
213 "name" : "add_from_group",
214 "parameters" : {
215 "additionalProperties" : 0,
216 "properties" : {
217 "id" : {
218 "description" : "Rule ID.",
219 "type" : "integer",
220 "typetext" : "<integer>"
221 },
222 "ogroup" : {
223 "description" : "Groups ID.",
224 "type" : "integer",
225 "typetext" : "<integer>"
226 }
227 }
228 },
732d76e1
DM
229 "permissions" : {
230 "check" : [
231 "admin"
232 ]
233 },
f245a28c
DM
234 "protected" : 1,
235 "proxyto" : "master",
236 "returns" : {
237 "type" : "null"
238 }
239 }
240 },
241 "leaf" : 0,
242 "path" : "/config/ruledb/rules/{id}/from",
243 "text" : "from"
244 },
245 {
246 "children" : [
247 {
248 "info" : {
249 "DELETE" : {
250 "description" : "Delete group from 'to' list.",
251 "method" : "DELETE",
252 "name" : "delete_to_group",
253 "parameters" : {
254 "additionalProperties" : 0,
255 "properties" : {
256 "id" : {
257 "description" : "Rule ID.",
258 "type" : "integer",
259 "typetext" : "<integer>"
260 },
261 "ogroup" : {
262 "description" : "Groups ID.",
263 "type" : "integer",
264 "typetext" : "<integer>"
265 }
266 }
267 },
732d76e1
DM
268 "permissions" : {
269 "check" : [
270 "admin"
271 ]
272 },
f245a28c
DM
273 "protected" : 1,
274 "proxyto" : "master",
275 "returns" : {
276 "type" : "null"
277 }
278 }
279 },
280 "leaf" : 1,
281 "path" : "/config/ruledb/rules/{id}/to/{ogroup}",
282 "text" : "{ogroup}"
283 }
284 ],
285 "info" : {
286 "GET" : {
287 "description" : "Get 'to' group list.",
288 "method" : "GET",
289 "name" : "to",
290 "parameters" : {
291 "additionalProperties" : 0,
292 "properties" : {
293 "id" : {
294 "description" : "Rule ID.",
295 "type" : "integer",
296 "typetext" : "<integer>"
297 }
298 }
299 },
732d76e1
DM
300 "permissions" : {
301 "check" : [
302 "admin",
303 "audit"
304 ]
305 },
f245a28c
DM
306 "proxyto" : "master",
307 "returns" : {
308 "items" : {
309 "properties" : {
310 "id" : {
311 "type" : "integer"
312 }
313 },
314 "type" : "object"
315 },
316 "type" : "array"
317 }
318 },
319 "POST" : {
320 "description" : "Add group to 'to' list.",
321 "method" : "POST",
322 "name" : "add_to_group",
323 "parameters" : {
324 "additionalProperties" : 0,
325 "properties" : {
326 "id" : {
327 "description" : "Rule ID.",
328 "type" : "integer",
329 "typetext" : "<integer>"
330 },
331 "ogroup" : {
332 "description" : "Groups ID.",
333 "type" : "integer",
334 "typetext" : "<integer>"
335 }
336 }
337 },
732d76e1
DM
338 "permissions" : {
339 "check" : [
340 "admin"
341 ]
342 },
f245a28c
DM
343 "protected" : 1,
344 "proxyto" : "master",
345 "returns" : {
346 "type" : "null"
347 }
348 }
349 },
350 "leaf" : 0,
351 "path" : "/config/ruledb/rules/{id}/to",
352 "text" : "to"
353 },
354 {
355 "children" : [
356 {
357 "info" : {
358 "DELETE" : {
359 "description" : "Delete group from 'when' list.",
360 "method" : "DELETE",
361 "name" : "delete_when_group",
362 "parameters" : {
363 "additionalProperties" : 0,
364 "properties" : {
365 "id" : {
366 "description" : "Rule ID.",
367 "type" : "integer",
368 "typetext" : "<integer>"
369 },
370 "ogroup" : {
371 "description" : "Groups ID.",
372 "type" : "integer",
373 "typetext" : "<integer>"
374 }
375 }
376 },
732d76e1
DM
377 "permissions" : {
378 "check" : [
379 "admin"
380 ]
381 },
f245a28c
DM
382 "protected" : 1,
383 "proxyto" : "master",
384 "returns" : {
385 "type" : "null"
386 }
387 }
388 },
389 "leaf" : 1,
390 "path" : "/config/ruledb/rules/{id}/when/{ogroup}",
391 "text" : "{ogroup}"
392 }
393 ],
394 "info" : {
395 "GET" : {
396 "description" : "Get 'when' group list.",
397 "method" : "GET",
398 "name" : "when",
399 "parameters" : {
400 "additionalProperties" : 0,
401 "properties" : {
402 "id" : {
403 "description" : "Rule ID.",
404 "type" : "integer",
405 "typetext" : "<integer>"
406 }
407 }
408 },
732d76e1
DM
409 "permissions" : {
410 "check" : [
411 "admin",
412 "audit"
413 ]
414 },
f245a28c
DM
415 "proxyto" : "master",
416 "returns" : {
417 "items" : {
418 "properties" : {
419 "id" : {
420 "type" : "integer"
421 }
422 },
423 "type" : "object"
424 },
425 "type" : "array"
426 }
427 },
428 "POST" : {
429 "description" : "Add group to 'when' list.",
430 "method" : "POST",
431 "name" : "add_when_group",
432 "parameters" : {
433 "additionalProperties" : 0,
434 "properties" : {
435 "id" : {
436 "description" : "Rule ID.",
437 "type" : "integer",
438 "typetext" : "<integer>"
439 },
440 "ogroup" : {
441 "description" : "Groups ID.",
442 "type" : "integer",
443 "typetext" : "<integer>"
444 }
445 }
446 },
732d76e1
DM
447 "permissions" : {
448 "check" : [
449 "admin"
450 ]
451 },
f245a28c
DM
452 "protected" : 1,
453 "proxyto" : "master",
454 "returns" : {
455 "type" : "null"
456 }
457 }
458 },
459 "leaf" : 0,
460 "path" : "/config/ruledb/rules/{id}/when",
461 "text" : "when"
462 },
463 {
464 "children" : [
465 {
466 "info" : {
467 "DELETE" : {
468 "description" : "Delete group from 'what' list.",
469 "method" : "DELETE",
470 "name" : "delete_what_group",
471 "parameters" : {
472 "additionalProperties" : 0,
473 "properties" : {
474 "id" : {
475 "description" : "Rule ID.",
476 "type" : "integer",
477 "typetext" : "<integer>"
478 },
479 "ogroup" : {
480 "description" : "Groups ID.",
481 "type" : "integer",
482 "typetext" : "<integer>"
483 }
484 }
485 },
732d76e1
DM
486 "permissions" : {
487 "check" : [
488 "admin"
489 ]
490 },
f245a28c
DM
491 "protected" : 1,
492 "proxyto" : "master",
493 "returns" : {
494 "type" : "null"
495 }
496 }
497 },
498 "leaf" : 1,
499 "path" : "/config/ruledb/rules/{id}/what/{ogroup}",
500 "text" : "{ogroup}"
501 }
502 ],
503 "info" : {
504 "GET" : {
505 "description" : "Get 'what' group list.",
506 "method" : "GET",
507 "name" : "what",
508 "parameters" : {
509 "additionalProperties" : 0,
510 "properties" : {
511 "id" : {
512 "description" : "Rule ID.",
513 "type" : "integer",
514 "typetext" : "<integer>"
515 }
516 }
517 },
732d76e1
DM
518 "permissions" : {
519 "check" : [
520 "admin",
521 "audit"
522 ]
523 },
f245a28c
DM
524 "proxyto" : "master",
525 "returns" : {
526 "items" : {
527 "properties" : {
528 "id" : {
529 "type" : "integer"
530 }
531 },
532 "type" : "object"
533 },
534 "type" : "array"
535 }
536 },
537 "POST" : {
538 "description" : "Add group to 'what' list.",
539 "method" : "POST",
540 "name" : "add_what_group",
541 "parameters" : {
542 "additionalProperties" : 0,
543 "properties" : {
544 "id" : {
545 "description" : "Rule ID.",
546 "type" : "integer",
547 "typetext" : "<integer>"
548 },
549 "ogroup" : {
550 "description" : "Groups ID.",
551 "type" : "integer",
552 "typetext" : "<integer>"
553 }
554 }
555 },
732d76e1
DM
556 "permissions" : {
557 "check" : [
558 "admin"
559 ]
560 },
f245a28c
DM
561 "protected" : 1,
562 "proxyto" : "master",
563 "returns" : {
564 "type" : "null"
565 }
566 }
567 },
568 "leaf" : 0,
569 "path" : "/config/ruledb/rules/{id}/what",
570 "text" : "what"
571 },
572 {
573 "children" : [
574 {
575 "info" : {
576 "DELETE" : {
577 "description" : "Delete group from 'action' list.",
578 "method" : "DELETE",
579 "name" : "delete_action_group",
580 "parameters" : {
581 "additionalProperties" : 0,
582 "properties" : {
583 "id" : {
584 "description" : "Rule ID.",
585 "type" : "integer",
586 "typetext" : "<integer>"
587 },
588 "ogroup" : {
589 "description" : "Groups ID.",
590 "type" : "integer",
591 "typetext" : "<integer>"
592 }
593 }
594 },
732d76e1
DM
595 "permissions" : {
596 "check" : [
597 "admin"
598 ]
599 },
f245a28c
DM
600 "protected" : 1,
601 "proxyto" : "master",
602 "returns" : {
603 "type" : "null"
604 }
605 }
606 },
607 "leaf" : 1,
608 "path" : "/config/ruledb/rules/{id}/action/{ogroup}",
609 "text" : "{ogroup}"
610 }
611 ],
612 "info" : {
613 "GET" : {
614 "description" : "Get 'action' group list.",
615 "method" : "GET",
616 "name" : "action",
617 "parameters" : {
618 "additionalProperties" : 0,
619 "properties" : {
620 "id" : {
621 "description" : "Rule ID.",
622 "type" : "integer",
623 "typetext" : "<integer>"
624 }
625 }
626 },
732d76e1
DM
627 "permissions" : {
628 "check" : [
629 "admin",
630 "audit"
631 ]
632 },
f245a28c
DM
633 "proxyto" : "master",
634 "returns" : {
635 "items" : {
636 "properties" : {
637 "id" : {
638 "type" : "integer"
639 }
640 },
641 "type" : "object"
642 },
643 "type" : "array"
644 }
645 },
646 "POST" : {
647 "description" : "Add group to 'action' list.",
648 "method" : "POST",
649 "name" : "add_action_group",
650 "parameters" : {
651 "additionalProperties" : 0,
652 "properties" : {
653 "id" : {
654 "description" : "Rule ID.",
655 "type" : "integer",
656 "typetext" : "<integer>"
657 },
658 "ogroup" : {
659 "description" : "Groups ID.",
660 "type" : "integer",
661 "typetext" : "<integer>"
662 }
663 }
664 },
732d76e1
DM
665 "permissions" : {
666 "check" : [
667 "admin"
668 ]
669 },
f245a28c
DM
670 "protected" : 1,
671 "proxyto" : "master",
672 "returns" : {
673 "type" : "null"
674 }
675 }
676 },
677 "leaf" : 0,
678 "path" : "/config/ruledb/rules/{id}/action",
679 "text" : "action"
680 }
681 ],
682 "info" : {
683 "DELETE" : {
684 "description" : "Delete rule.",
685 "method" : "DELETE",
686 "name" : "delete_rule",
687 "parameters" : {
688 "additionalProperties" : 0,
689 "properties" : {
690 "id" : {
691 "description" : "Rule ID.",
692 "type" : "integer",
693 "typetext" : "<integer>"
694 }
695 }
696 },
732d76e1
DM
697 "permissions" : {
698 "check" : [
699 "admin"
700 ]
701 },
d7cd791b
DM
702 "protected" : 1,
703 "proxyto" : "master",
f245a28c
DM
704 "returns" : {
705 "type" : "null"
706 }
707 },
708 "GET" : {
709 "description" : "Directory index.",
710 "method" : "GET",
711 "name" : "index",
712 "parameters" : {
713 "additionalProperties" : 0,
714 "properties" : {
715 "id" : {
716 "description" : "Rule ID.",
717 "type" : "integer",
718 "typetext" : "<integer>"
719 }
720 }
721 },
732d76e1
DM
722 "permissions" : {
723 "check" : [
724 "admin",
725 "audit"
726 ]
727 },
f245a28c
DM
728 "returns" : {
729 "items" : {
730 "properties" : {
731 "subdir" : {
732 "type" : "string"
733 }
734 },
735 "type" : "object"
736 },
737 "links" : [
738 {
739 "href" : "{subdir}",
740 "rel" : "child"
741 }
742 ],
743 "type" : "array"
744 }
745 }
746 },
747 "leaf" : 0,
748 "path" : "/config/ruledb/rules/{id}",
749 "text" : "{id}"
750 }
751 ],
752 "info" : {
753 "GET" : {
754 "description" : "Get list of rules.",
755 "method" : "GET",
756 "name" : "list_rules",
757 "parameters" : {
758 "additionalProperties" : 0
759 },
732d76e1
DM
760 "permissions" : {
761 "check" : [
762 "admin",
763 "audit"
764 ]
765 },
f245a28c
DM
766 "proxyto" : "master",
767 "returns" : {
768 "items" : {
769 "properties" : {
770 "id" : {
771 "type" : "integer"
772 }
773 },
774 "type" : "object"
775 },
776 "links" : [
777 {
778 "href" : "{id}",
779 "rel" : "child"
780 }
781 ],
782 "type" : "array"
783 }
784 },
785 "POST" : {
786 "description" : "Create new rule.",
787 "method" : "POST",
788 "name" : "create_rule",
789 "parameters" : {
790 "additionalProperties" : 0,
791 "properties" : {
792 "active" : {
793 "description" : "Flag to activate rule.",
794 "optional" : 1,
795 "type" : "boolean",
796 "typetext" : "<boolean>"
797 },
798 "direction" : {
799 "description" : "Rule direction. Value `0` matches incomming mails, value `1` matches outgoing mails, and value `2` matches both directions.",
800 "maximum" : 2,
801 "minimum" : 0,
802 "optional" : 1,
803 "type" : "integer",
804 "typetext" : "<integer> (0 - 2)"
805 },
806 "name" : {
807 "description" : "Rule name",
808 "type" : "string",
809 "typetext" : "<string>"
810 },
811 "priority" : {
812 "description" : "Rule priotity.",
813 "maximum" : 100,
814 "minimum" : 0,
815 "type" : "integer",
816 "typetext" : "<integer> (0 - 100)"
817 }
818 }
819 },
732d76e1
DM
820 "permissions" : {
821 "check" : [
822 "admin"
823 ]
824 },
f245a28c
DM
825 "protected" : 1,
826 "proxyto" : "master",
827 "returns" : {
828 "type" : "integer"
829 }
830 }
831 },
832 "leaf" : 0,
833 "path" : "/config/ruledb/rules",
834 "text" : "rules"
835 },
836 {
837 "children" : [
838 {
839 "children" : [
840 {
841 "info" : {
842 "DELETE" : {
843 "description" : "Delete 'actions' object.",
844 "method" : "DELETE",
845 "name" : "delete_action",
846 "parameters" : {
847 "additionalProperties" : 0,
848 "properties" : {
849 "id" : {
850 "description" : "Action Object ID.",
851 "pattern" : "\\d+_\\d+",
852 "type" : "string"
853 }
854 }
855 },
732d76e1
DM
856 "permissions" : {
857 "check" : [
858 "admin"
859 ]
860 },
d7cd791b
DM
861 "protected" : 1,
862 "proxyto" : "master",
f245a28c
DM
863 "returns" : {
864 "type" : "null"
865 }
866 }
867 },
868 "leaf" : 1,
869 "path" : "/config/ruledb/action/objects/{id}",
870 "text" : "{id}"
871 }
872 ],
873 "info" : {
874 "GET" : {
875 "description" : "List 'actions' objects.",
876 "method" : "GET",
877 "name" : "list_actions",
878 "parameters" : {
879 "additionalProperties" : 0
880 },
732d76e1
DM
881 "permissions" : {
882 "check" : [
883 "admin",
884 "audit"
885 ]
886 },
d7cd791b 887 "proxyto" : "master",
f245a28c
DM
888 "returns" : {
889 "items" : {
890 "properties" : {
891 "id" : {
892 "description" : "Action Object ID.",
893 "pattern" : "\\d+_\\d+",
894 "type" : "string"
895 }
896 },
897 "type" : "object"
898 },
899 "links" : [
900 {
901 "href" : "{id}",
902 "rel" : "child"
903 }
904 ],
905 "type" : "array"
906 }
907 }
908 },
909 "leaf" : 0,
910 "path" : "/config/ruledb/action/objects",
911 "text" : "objects"
912 },
913 {
914 "children" : [
915 {
916 "info" : {
917 "GET" : {
918 "description" : "Read 'BCC' object settings.",
919 "method" : "GET",
920 "name" : "read_bcc",
921 "parameters" : {
922 "additionalProperties" : 0,
923 "properties" : {
924 "id" : {
925 "description" : "Action Object ID.",
926 "pattern" : "\\d+_\\d+",
927 "type" : "string"
928 }
929 }
930 },
732d76e1
DM
931 "permissions" : {
932 "check" : [
933 "admin",
934 "audit"
935 ]
936 },
f245a28c
DM
937 "proxyto" : "master",
938 "returns" : {
939 "properties" : {
940 "id" : {
941 "type" : "string"
942 }
943 },
944 "type" : "object"
945 }
946 },
947 "PUT" : {
948 "description" : "Update 'BCC' object.",
949 "method" : "PUT",
950 "name" : "update_bcc",
951 "parameters" : {
952 "additionalProperties" : 0,
953 "properties" : {
954 "id" : {
955 "description" : "Action Object ID.",
956 "pattern" : "\\d+_\\d+",
957 "type" : "string"
958 },
959 "info" : {
960 "description" : "Informational comment.",
961 "maxLength" : 255,
962 "optional" : 1,
963 "type" : "string",
964 "typetext" : "<string>"
965 },
966 "name" : {
967 "description" : "Action name.",
968 "maxLength" : 255,
969 "optional" : 1,
970 "type" : "string",
971 "typetext" : "<string>"
972 },
973 "original" : {
974 "default" : 1,
975 "description" : "Send the original, unmodified mail.",
976 "optional" : 1,
977 "type" : "boolean",
978 "typetext" : "<boolean>"
979 },
980 "target" : {
981 "description" : "Send a Blind Carbon Copy to this email address.",
982 "format" : "email",
983 "type" : "string",
984 "typetext" : "<string>"
985 }
986 }
987 },
732d76e1
DM
988 "permissions" : {
989 "check" : [
990 "admin"
991 ]
992 },
d7cd791b 993 "protected" : 1,
f245a28c
DM
994 "proxyto" : "master",
995 "returns" : {
996 "type" : "null"
997 }
998 }
999 },
1000 "leaf" : 1,
1001 "path" : "/config/ruledb/action/bcc/{id}",
1002 "text" : "{id}"
1003 }
1004 ],
1005 "info" : {
1006 "POST" : {
1007 "description" : "Create 'BCC' object.",
1008 "method" : "POST",
1009 "name" : "bcc",
1010 "parameters" : {
1011 "additionalProperties" : 0,
1012 "properties" : {
1013 "info" : {
1014 "description" : "Informational comment.",
1015 "maxLength" : 255,
1016 "optional" : 1,
1017 "type" : "string",
1018 "typetext" : "<string>"
1019 },
1020 "name" : {
1021 "description" : "Action name.",
1022 "maxLength" : 255,
1023 "type" : "string",
1024 "typetext" : "<string>"
1025 },
1026 "original" : {
1027 "default" : 1,
1028 "description" : "Send the original, unmodified mail.",
1029 "optional" : 1,
1030 "type" : "boolean",
1031 "typetext" : "<boolean>"
1032 },
1033 "target" : {
1034 "description" : "Send a Blind Carbon Copy to this email address.",
1035 "format" : "email",
1036 "type" : "string",
1037 "typetext" : "<string>"
1038 }
1039 }
1040 },
732d76e1
DM
1041 "permissions" : {
1042 "check" : [
1043 "admin"
1044 ]
1045 },
d7cd791b 1046 "protected" : 1,
f245a28c
DM
1047 "proxyto" : "master",
1048 "returns" : {
1049 "description" : "The object ID.",
1050 "type" : "string"
1051 }
1052 }
1053 },
1054 "leaf" : 0,
1055 "path" : "/config/ruledb/action/bcc",
1056 "text" : "bcc"
732d76e1 1057 },
f245a28c
DM
1058 {
1059 "children" : [
1060 {
1061 "info" : {
1062 "GET" : {
732d76e1 1063 "description" : "Read 'Header Attribute' object settings.",
f245a28c 1064 "method" : "GET",
732d76e1 1065 "name" : "read_field",
f245a28c
DM
1066 "parameters" : {
1067 "additionalProperties" : 0,
1068 "properties" : {
732d76e1
DM
1069 "id" : {
1070 "description" : "Action Object ID.",
1071 "pattern" : "\\d+_\\d+",
1072 "type" : "string"
f245a28c
DM
1073 }
1074 }
1075 },
732d76e1
DM
1076 "permissions" : {
1077 "check" : [
1078 "admin",
1079 "audit"
1080 ]
1081 },
f245a28c
DM
1082 "proxyto" : "master",
1083 "returns" : {
1084 "properties" : {
1085 "id" : {
f245a28c
DM
1086 "type" : "string"
1087 }
1088 },
1089 "type" : "object"
1090 }
1091 },
1092 "PUT" : {
732d76e1 1093 "description" : "Update 'Header Attribute' object.",
f245a28c 1094 "method" : "PUT",
732d76e1 1095 "name" : "update_field",
f245a28c
DM
1096 "parameters" : {
1097 "additionalProperties" : 0,
1098 "properties" : {
732d76e1
DM
1099 "field" : {
1100 "description" : "The Field",
1101 "maxLength" : 1024,
1102 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
1103 "type" : "string"
1104 },
1105 "id" : {
1106 "description" : "Action Object ID.",
1107 "pattern" : "\\d+_\\d+",
1108 "type" : "string"
1109 },
f245a28c
DM
1110 "info" : {
1111 "description" : "Informational comment.",
1112 "maxLength" : 255,
1113 "optional" : 1,
1114 "type" : "string",
1115 "typetext" : "<string>"
1116 },
1117 "name" : {
732d76e1 1118 "description" : "Action name.",
f245a28c
DM
1119 "maxLength" : 255,
1120 "optional" : 1,
1121 "type" : "string",
1122 "typetext" : "<string>"
1123 },
732d76e1
DM
1124 "value" : {
1125 "description" : "The Value",
1126 "maxLength" : 1024,
1127 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
1128 "type" : "string"
f245a28c
DM
1129 }
1130 }
1131 },
732d76e1
DM
1132 "permissions" : {
1133 "check" : [
1134 "admin"
1135 ]
1136 },
d7cd791b 1137 "protected" : 1,
f245a28c
DM
1138 "proxyto" : "master",
1139 "returns" : {
1140 "type" : "null"
1141 }
1142 }
1143 },
1144 "leaf" : 1,
732d76e1
DM
1145 "path" : "/config/ruledb/action/field/{id}",
1146 "text" : "{id}"
1147 }
1148 ],
1149 "info" : {
1150 "POST" : {
1151 "description" : "Create 'Header Attribute' object.",
1152 "method" : "POST",
1153 "name" : "field",
1154 "parameters" : {
1155 "additionalProperties" : 0,
1156 "properties" : {
1157 "field" : {
1158 "description" : "The Field",
1159 "maxLength" : 1024,
1160 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
1161 "type" : "string"
1162 },
f245a28c 1163 "info" : {
732d76e1
DM
1164 "description" : "Informational comment.",
1165 "maxLength" : 255,
1166 "optional" : 1,
1167 "type" : "string",
1168 "typetext" : "<string>"
1169 },
1170 "name" : {
1171 "description" : "Action name.",
1172 "maxLength" : 255,
1173 "type" : "string",
1174 "typetext" : "<string>"
1175 },
1176 "value" : {
1177 "description" : "The Value",
1178 "maxLength" : 1024,
1179 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
1180 "type" : "string"
1181 }
1182 }
1183 },
1184 "permissions" : {
1185 "check" : [
1186 "admin"
1187 ]
1188 },
1189 "protected" : 1,
1190 "proxyto" : "master",
1191 "returns" : {
1192 "description" : "The object ID.",
1193 "type" : "string"
1194 }
1195 }
1196 },
1197 "leaf" : 0,
1198 "path" : "/config/ruledb/action/field",
1199 "text" : "field"
1200 },
1201 {
1202 "children" : [
1203 {
1204 "info" : {
1205 "GET" : {
1206 "description" : "Read 'Notification' object settings.",
1207 "method" : "GET",
1208 "name" : "read_notification",
1209 "parameters" : {
1210 "additionalProperties" : 0,
1211 "properties" : {
1212 "id" : {
1213 "description" : "Action Object ID.",
1214 "pattern" : "\\d+_\\d+",
1215 "type" : "string"
1216 }
1217 }
1218 },
1219 "permissions" : {
1220 "check" : [
1221 "admin",
1222 "audit"
1223 ]
1224 },
1225 "proxyto" : "master",
1226 "returns" : {
1227 "properties" : {
1228 "id" : {
1229 "type" : "string"
1230 }
1231 },
1232 "type" : "object"
1233 }
1234 },
1235 "PUT" : {
1236 "description" : "Update 'Notification' object.",
1237 "method" : "PUT",
1238 "name" : "update_notification",
1239 "parameters" : {
1240 "additionalProperties" : 0,
1241 "properties" : {
1242 "attach" : {
1243 "default" : 0,
1244 "description" : "Attach original E-Mail",
1245 "optional" : 1,
1246 "type" : "boolean",
1247 "typetext" : "<boolean>"
1248 },
1249 "body" : {
1250 "description" : "The Notification Body",
1251 "maxLength" : 2048,
1252 "type" : "string",
1253 "typetext" : "<string>"
1254 },
1255 "id" : {
1256 "description" : "Action Object ID.",
1257 "pattern" : "\\d+_\\d+",
1258 "type" : "string"
1259 },
1260 "info" : {
1261 "description" : "Informational comment.",
1262 "maxLength" : 255,
1263 "optional" : 1,
1264 "type" : "string",
1265 "typetext" : "<string>"
1266 },
1267 "name" : {
1268 "description" : "Action name.",
1269 "maxLength" : 255,
1270 "optional" : 1,
1271 "type" : "string",
1272 "typetext" : "<string>"
1273 },
1274 "subject" : {
1275 "description" : "The Notification subject",
1276 "maxLength" : 100,
1277 "type" : "string",
1278 "typetext" : "<string>"
1279 },
1280 "to" : {
1281 "description" : "The Receiver E-Mail address",
1282 "maxLength" : 200,
1283 "type" : "string",
1284 "typetext" : "<string>"
1285 }
1286 }
1287 },
1288 "permissions" : {
1289 "check" : [
1290 "admin"
1291 ]
1292 },
1293 "protected" : 1,
1294 "proxyto" : "master",
1295 "returns" : {
1296 "type" : "null"
1297 }
1298 }
1299 },
1300 "leaf" : 1,
1301 "path" : "/config/ruledb/action/notification/{id}",
1302 "text" : "{id}"
1303 }
1304 ],
1305 "info" : {
1306 "POST" : {
1307 "description" : "Create 'Notification' object.",
1308 "method" : "POST",
1309 "name" : "notification",
1310 "parameters" : {
1311 "additionalProperties" : 0,
1312 "properties" : {
1313 "attach" : {
1314 "default" : 0,
1315 "description" : "Attach original E-Mail",
1316 "optional" : 1,
1317 "type" : "boolean",
1318 "typetext" : "<boolean>"
1319 },
1320 "body" : {
1321 "description" : "The Notification Body",
1322 "maxLength" : 2048,
1323 "type" : "string",
1324 "typetext" : "<string>"
1325 },
1326 "info" : {
1327 "description" : "Informational comment.",
1328 "maxLength" : 255,
1329 "optional" : 1,
1330 "type" : "string",
1331 "typetext" : "<string>"
1332 },
1333 "name" : {
1334 "description" : "Action name.",
1335 "maxLength" : 255,
1336 "type" : "string",
1337 "typetext" : "<string>"
1338 },
1339 "subject" : {
1340 "description" : "The Notification subject",
1341 "maxLength" : 100,
1342 "type" : "string",
1343 "typetext" : "<string>"
1344 },
1345 "to" : {
1346 "description" : "The Receiver E-Mail address",
1347 "maxLength" : 200,
1348 "type" : "string",
1349 "typetext" : "<string>"
1350 }
1351 }
1352 },
1353 "permissions" : {
1354 "check" : [
1355 "admin"
1356 ]
1357 },
1358 "protected" : 1,
1359 "proxyto" : "master",
1360 "returns" : {
1361 "description" : "The object ID.",
1362 "type" : "string"
1363 }
1364 }
1365 },
1366 "leaf" : 0,
1367 "path" : "/config/ruledb/action/notification",
1368 "text" : "notification"
1369 },
1370 {
1371 "children" : [
1372 {
1373 "info" : {
1374 "GET" : {
1375 "description" : "Read 'Disclaimer' object settings.",
1376 "method" : "GET",
1377 "name" : "read_disclaimer",
1378 "parameters" : {
1379 "additionalProperties" : 0,
1380 "properties" : {
1381 "id" : {
1382 "description" : "Action Object ID.",
1383 "pattern" : "\\d+_\\d+",
1384 "type" : "string"
1385 }
1386 }
1387 },
1388 "permissions" : {
1389 "check" : [
1390 "admin",
1391 "audit"
1392 ]
1393 },
1394 "proxyto" : "master",
1395 "returns" : {
1396 "properties" : {
1397 "id" : {
1398 "type" : "string"
1399 }
1400 },
1401 "type" : "object"
1402 }
1403 },
1404 "PUT" : {
1405 "description" : "Update 'Disclaimer' object.",
1406 "method" : "PUT",
1407 "name" : "update_disclaimer",
1408 "parameters" : {
1409 "additionalProperties" : 0,
1410 "properties" : {
1411 "disclaimer" : {
1412 "description" : "The Disclaimer",
1413 "maxLength" : 2048,
1414 "type" : "string",
1415 "typetext" : "<string>"
1416 },
1417 "id" : {
1418 "description" : "Action Object ID.",
1419 "pattern" : "\\d+_\\d+",
1420 "type" : "string"
1421 },
1422 "info" : {
1423 "description" : "Informational comment.",
1424 "maxLength" : 255,
1425 "optional" : 1,
1426 "type" : "string",
1427 "typetext" : "<string>"
1428 },
1429 "name" : {
1430 "description" : "Action name.",
1431 "maxLength" : 255,
1432 "optional" : 1,
1433 "type" : "string",
1434 "typetext" : "<string>"
1435 }
1436 }
1437 },
1438 "permissions" : {
1439 "check" : [
1440 "admin"
1441 ]
1442 },
1443 "protected" : 1,
1444 "proxyto" : "master",
1445 "returns" : {
1446 "type" : "null"
1447 }
1448 }
1449 },
1450 "leaf" : 1,
1451 "path" : "/config/ruledb/action/disclaimer/{id}",
1452 "text" : "{id}"
1453 }
1454 ],
1455 "info" : {
1456 "POST" : {
1457 "description" : "Create 'Disclaimer' object.",
1458 "method" : "POST",
1459 "name" : "disclaimer",
1460 "parameters" : {
1461 "additionalProperties" : 0,
1462 "properties" : {
1463 "disclaimer" : {
1464 "description" : "The Disclaimer",
1465 "maxLength" : 2048,
1466 "type" : "string",
1467 "typetext" : "<string>"
1468 },
1469 "info" : {
1470 "description" : "Informational comment.",
1471 "maxLength" : 255,
1472 "optional" : 1,
1473 "type" : "string",
1474 "typetext" : "<string>"
1475 },
1476 "name" : {
1477 "description" : "Action name.",
1478 "maxLength" : 255,
1479 "type" : "string",
1480 "typetext" : "<string>"
1481 }
1482 }
1483 },
1484 "permissions" : {
1485 "check" : [
1486 "admin"
1487 ]
1488 },
1489 "protected" : 1,
1490 "proxyto" : "master",
1491 "returns" : {
1492 "description" : "The object ID.",
1493 "type" : "string"
1494 }
1495 }
1496 },
1497 "leaf" : 0,
1498 "path" : "/config/ruledb/action/disclaimer",
1499 "text" : "disclaimer"
1500 },
1501 {
1502 "children" : [
1503 {
1504 "info" : {
1505 "GET" : {
1506 "description" : "Read 'Remove attachments' object settings.",
1507 "method" : "GET",
1508 "name" : "read_removeattachments",
1509 "parameters" : {
1510 "additionalProperties" : 0,
1511 "properties" : {
1512 "id" : {
1513 "description" : "Action Object ID.",
1514 "pattern" : "\\d+_\\d+",
1515 "type" : "string"
1516 }
1517 }
1518 },
1519 "permissions" : {
1520 "check" : [
1521 "admin",
1522 "audit"
1523 ]
1524 },
1525 "proxyto" : "master",
1526 "returns" : {
1527 "properties" : {
1528 "id" : {
1529 "type" : "string"
1530 }
1531 },
1532 "type" : "object"
1533 }
1534 },
1535 "PUT" : {
1536 "description" : "Update 'Remove attachments' object.",
1537 "method" : "PUT",
1538 "name" : "update_removeattachments",
1539 "parameters" : {
1540 "additionalProperties" : 0,
1541 "properties" : {
1542 "all" : {
1543 "description" : "Remove all attachments",
1544 "optional" : 1,
1545 "type" : "boolean",
1546 "typetext" : "<boolean>"
1547 },
1548 "id" : {
1549 "description" : "Action Object ID.",
1550 "pattern" : "\\d+_\\d+",
1551 "type" : "string"
1552 },
1553 "info" : {
1554 "description" : "Informational comment.",
1555 "maxLength" : 255,
1556 "optional" : 1,
1557 "type" : "string",
1558 "typetext" : "<string>"
1559 },
1560 "name" : {
1561 "description" : "Action name.",
1562 "maxLength" : 255,
1563 "optional" : 1,
1564 "type" : "string",
1565 "typetext" : "<string>"
1566 },
1567 "text" : {
1568 "description" : "The replacement text.",
1569 "maxLength" : 2048,
1570 "type" : "string",
1571 "typetext" : "<string>"
1572 }
1573 }
1574 },
1575 "permissions" : {
1576 "check" : [
1577 "admin"
1578 ]
1579 },
1580 "protected" : 1,
1581 "proxyto" : "master",
1582 "returns" : {
1583 "type" : "null"
1584 }
1585 }
1586 },
1587 "leaf" : 1,
1588 "path" : "/config/ruledb/action/removeattachments/{id}",
1589 "text" : "{id}"
1590 }
1591 ],
1592 "info" : {
1593 "POST" : {
1594 "description" : "Create 'Remove attachments' object.",
1595 "method" : "POST",
1596 "name" : "removeattachments",
1597 "parameters" : {
1598 "additionalProperties" : 0,
1599 "properties" : {
1600 "all" : {
1601 "description" : "Remove all attachments",
1602 "optional" : 1,
1603 "type" : "boolean",
1604 "typetext" : "<boolean>"
1605 },
1606 "info" : {
1607 "description" : "Informational comment.",
1608 "maxLength" : 255,
1609 "optional" : 1,
1610 "type" : "string",
1611 "typetext" : "<string>"
1612 },
1613 "name" : {
1614 "description" : "Action name.",
1615 "maxLength" : 255,
1616 "type" : "string",
1617 "typetext" : "<string>"
1618 },
1619 "text" : {
1620 "description" : "The replacement text.",
1621 "maxLength" : 2048,
1622 "type" : "string",
1623 "typetext" : "<string>"
1624 }
1625 }
1626 },
1627 "permissions" : {
1628 "check" : [
1629 "admin"
1630 ]
1631 },
1632 "protected" : 1,
1633 "proxyto" : "master",
1634 "returns" : {
1635 "description" : "The object ID.",
1636 "type" : "string"
1637 }
1638 }
1639 },
1640 "leaf" : 0,
1641 "path" : "/config/ruledb/action/removeattachments",
1642 "text" : "removeattachments"
1643 }
1644 ],
1645 "info" : {
1646 "GET" : {
1647 "description" : "Directory index.",
1648 "method" : "GET",
1649 "name" : "index",
1650 "parameters" : {
1651 "additionalProperties" : 0
1652 },
1653 "permissions" : {
1654 "check" : [
1655 "admin",
1656 "audit"
1657 ]
1658 },
1659 "returns" : {
1660 "items" : {
1661 "properties" : {
1662 "subdir" : {
1663 "type" : "string"
1664 }
1665 },
1666 "type" : "object"
1667 },
1668 "links" : [
1669 {
1670 "href" : "{subdir}",
1671 "rel" : "child"
1672 }
1673 ],
1674 "type" : "array"
1675 }
1676 }
1677 },
1678 "leaf" : 0,
1679 "path" : "/config/ruledb/action",
1680 "text" : "action"
1681 },
1682 {
1683 "children" : [
1684 {
1685 "children" : [
1686 {
1687 "info" : {
1688 "GET" : {
1689 "description" : "Get 'what' group properties",
1690 "method" : "GET",
1691 "name" : "get_config",
1692 "parameters" : {
1693 "additionalProperties" : 0,
1694 "properties" : {
1695 "ogroup" : {
1696 "description" : "Object Group ID.",
1697 "type" : "integer",
1698 "typetext" : "<integer>"
1699 }
1700 }
1701 },
1702 "permissions" : {
1703 "check" : [
1704 "admin",
1705 "audit"
1706 ]
1707 },
1708 "proxyto" : "master",
1709 "returns" : {
1710 "properties" : {
1711 "id" : {
1712 "type" : "integer"
1713 },
1714 "info" : {
1715 "type" : "string"
1716 },
1717 "name" : {
1718 "type" : "string"
1719 }
1720 },
1721 "type" : "object"
1722 }
1723 },
1724 "PUT" : {
1725 "description" : "Modify 'what' group properties",
1726 "method" : "PUT",
1727 "name" : "set_config",
1728 "parameters" : {
1729 "additionalProperties" : 0,
1730 "properties" : {
1731 "info" : {
1732 "description" : "Informational comment.",
1733 "maxLength" : 255,
1734 "optional" : 1,
1735 "type" : "string",
1736 "typetext" : "<string>"
1737 },
1738 "name" : {
1739 "description" : "Group name.",
1740 "maxLength" : 255,
1741 "optional" : 1,
1742 "type" : "string",
1743 "typetext" : "<string>"
1744 },
1745 "ogroup" : {
1746 "description" : "Object Group ID.",
1747 "type" : "integer",
1748 "typetext" : "<integer>"
1749 }
1750 }
1751 },
1752 "permissions" : {
1753 "check" : [
1754 "admin"
1755 ]
1756 },
1757 "protected" : 1,
1758 "proxyto" : "master",
1759 "returns" : {
1760 "type" : "null"
1761 }
1762 }
1763 },
1764 "leaf" : 1,
1765 "path" : "/config/ruledb/what/{ogroup}/config",
1766 "text" : "config"
1767 },
1768 {
1769 "children" : [
1770 {
1771 "info" : {
1772 "DELETE" : {
1773 "description" : "Remove an object from the 'what' group.",
1774 "method" : "DELETE",
1775 "name" : "delete_object",
1776 "parameters" : {
1777 "additionalProperties" : 0,
1778 "properties" : {
1779 "id" : {
1780 "description" : "Object ID.",
1781 "type" : "integer",
1782 "typetext" : "<integer>"
1783 },
1784 "ogroup" : {
1785 "description" : "Object Group ID.",
1786 "type" : "integer",
1787 "typetext" : "<integer>"
1788 }
1789 }
1790 },
1791 "permissions" : {
1792 "check" : [
1793 "admin"
1794 ]
1795 },
1796 "protected" : 1,
1797 "proxyto" : "master",
f245a28c
DM
1798 "returns" : {
1799 "type" : "null"
1800 }
1801 }
1802 },
1803 "leaf" : 1,
1804 "path" : "/config/ruledb/what/{ogroup}/objects/{id}",
1805 "text" : "{id}"
1806 }
1807 ],
1808 "info" : {
1809 "GET" : {
1810 "description" : "List 'what' group objects.",
1811 "method" : "GET",
1812 "name" : "objects",
1813 "parameters" : {
1814 "additionalProperties" : 0,
1815 "properties" : {
1816 "ogroup" : {
1817 "description" : "Object Group ID.",
1818 "type" : "integer",
1819 "typetext" : "<integer>"
1820 }
1821 }
1822 },
732d76e1
DM
1823 "permissions" : {
1824 "check" : [
1825 "admin",
1826 "audit"
1827 ]
1828 },
f245a28c
DM
1829 "proxyto" : "master",
1830 "returns" : {
1831 "items" : {
1832 "properties" : {
1833 "id" : {
1834 "type" : "integer"
1835 }
1836 },
1837 "type" : "object"
1838 },
1839 "links" : [
1840 {
1841 "href" : "{id}",
1842 "rel" : "child"
1843 }
1844 ],
1845 "type" : "array"
1846 }
1847 }
1848 },
1849 "leaf" : 0,
1850 "path" : "/config/ruledb/what/{ogroup}/objects",
1851 "text" : "objects"
f245a28c 1852 },
9fda36b0
DM
1853 {
1854 "children" : [
1855 {
1856 "info" : {
1857 "GET" : {
1858 "description" : "Read 'ContentType Filter' object settings.",
1859 "method" : "GET",
1860 "name" : "read_contenttype",
1861 "parameters" : {
1862 "additionalProperties" : 0,
1863 "properties" : {
1864 "id" : {
1865 "description" : "Object ID.",
1866 "type" : "integer",
1867 "typetext" : "<integer>"
1868 },
1869 "ogroup" : {
1870 "description" : "Object Groups ID.",
1871 "type" : "integer",
1872 "typetext" : "<integer>"
1873 }
1874 }
1875 },
1876 "proxyto" : "master",
1877 "returns" : {
1878 "properties" : {
1879 "id" : {
1880 "type" : "integer"
1881 }
1882 },
1883 "type" : "object"
1884 }
1885 },
1886 "PUT" : {
1887 "description" : "Update 'ContentType Filter' object.",
1888 "method" : "PUT",
1889 "name" : "update_contenttype",
1890 "parameters" : {
1891 "additionalProperties" : 0,
1892 "properties" : {
1893 "contenttype" : {
1894 "description" : "Content Type",
1895 "maxLength" : 1024,
1896 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
1897 "type" : "string"
1898 },
1899 "id" : {
1900 "description" : "Object ID.",
1901 "type" : "integer",
1902 "typetext" : "<integer>"
1903 },
1904 "ogroup" : {
1905 "description" : "Object Groups ID.",
1906 "type" : "integer",
1907 "typetext" : "<integer>"
1908 }
1909 }
1910 },
1911 "protected" : 1,
1912 "proxyto" : "master",
1913 "returns" : {
1914 "type" : "null"
1915 }
f245a28c
DM
1916 }
1917 },
9fda36b0
DM
1918 "leaf" : 1,
1919 "path" : "/config/ruledb/what/{ogroup}/contenttype/{id}",
1920 "text" : "{id}"
eff914dc 1921 }
9fda36b0 1922 ],
f245a28c 1923 "info" : {
9fda36b0
DM
1924 "POST" : {
1925 "description" : "Add 'ContentType Filter' object.",
1926 "method" : "POST",
1927 "name" : "contenttype",
f245a28c
DM
1928 "parameters" : {
1929 "additionalProperties" : 0,
1930 "properties" : {
9fda36b0
DM
1931 "contenttype" : {
1932 "description" : "Content Type",
1933 "maxLength" : 1024,
1934 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
f245a28c 1935 "type" : "string"
f245a28c
DM
1936 },
1937 "ogroup" : {
9fda36b0 1938 "description" : "Object Groups ID.",
f245a28c
DM
1939 "type" : "integer",
1940 "typetext" : "<integer>"
1941 }
1942 }
1943 },
d7cd791b 1944 "protected" : 1,
f245a28c
DM
1945 "proxyto" : "master",
1946 "returns" : {
9fda36b0
DM
1947 "description" : "The object ID.",
1948 "type" : "integer"
f245a28c
DM
1949 }
1950 }
1951 },
9fda36b0
DM
1952 "leaf" : 0,
1953 "path" : "/config/ruledb/what/{ogroup}/contenttype",
1954 "text" : "contenttype"
f245a28c
DM
1955 },
1956 {
1957 "children" : [
1958 {
1959 "info" : {
9fda36b0
DM
1960 "GET" : {
1961 "description" : "Read 'Match Field' object settings.",
1962 "method" : "GET",
1963 "name" : "read_matchfield",
f245a28c
DM
1964 "parameters" : {
1965 "additionalProperties" : 0,
1966 "properties" : {
1967 "id" : {
1968 "description" : "Object ID.",
1969 "type" : "integer",
1970 "typetext" : "<integer>"
1971 },
1972 "ogroup" : {
9fda36b0 1973 "description" : "Object Groups ID.",
f245a28c
DM
1974 "type" : "integer",
1975 "typetext" : "<integer>"
1976 }
1977 }
1978 },
1979 "proxyto" : "master",
1980 "returns" : {
9fda36b0
DM
1981 "properties" : {
1982 "id" : {
1983 "type" : "integer"
1984 }
1985 },
1986 "type" : "object"
f245a28c 1987 }
9fda36b0
DM
1988 },
1989 "PUT" : {
1990 "description" : "Update 'Match Field' object.",
1991 "method" : "PUT",
1992 "name" : "update_matchfield",
1993 "parameters" : {
1994 "additionalProperties" : 0,
1995 "properties" : {
1996 "field" : {
1997 "description" : "The Field",
1998 "maxLength" : 1024,
1999 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2000 "type" : "string"
2001 },
2002 "id" : {
2003 "description" : "Object ID.",
2004 "type" : "integer",
2005 "typetext" : "<integer>"
2006 },
2007 "ogroup" : {
2008 "description" : "Object Groups ID.",
2009 "type" : "integer",
2010 "typetext" : "<integer>"
2011 },
2012 "value" : {
2013 "description" : "The Value",
2014 "maxLength" : 1024,
2015 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2016 "type" : "string"
2017 }
2018 }
2019 },
2020 "protected" : 1,
2021 "proxyto" : "master",
2022 "returns" : {
2023 "type" : "null"
2024 }
2025 }
2026 },
2027 "leaf" : 1,
2028 "path" : "/config/ruledb/what/{ogroup}/matchfield/{id}",
2029 "text" : "{id}"
2030 }
2031 ],
f245a28c 2032 "info" : {
9fda36b0
DM
2033 "POST" : {
2034 "description" : "Add 'Match Field' object.",
2035 "method" : "POST",
2036 "name" : "matchfield",
f245a28c
DM
2037 "parameters" : {
2038 "additionalProperties" : 0,
2039 "properties" : {
9fda36b0
DM
2040 "field" : {
2041 "description" : "The Field",
2042 "maxLength" : 1024,
2043 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2044 "type" : "string"
2045 },
f245a28c 2046 "ogroup" : {
9fda36b0 2047 "description" : "Object Groups ID.",
f245a28c
DM
2048 "type" : "integer",
2049 "typetext" : "<integer>"
9fda36b0
DM
2050 },
2051 "value" : {
2052 "description" : "The Value",
2053 "maxLength" : 1024,
2054 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2055 "type" : "string"
f245a28c
DM
2056 }
2057 }
2058 },
9fda36b0 2059 "protected" : 1,
f245a28c
DM
2060 "proxyto" : "master",
2061 "returns" : {
9fda36b0
DM
2062 "description" : "The object ID.",
2063 "type" : "integer"
f245a28c
DM
2064 }
2065 }
2066 },
2067 "leaf" : 0,
9fda36b0
DM
2068 "path" : "/config/ruledb/what/{ogroup}/matchfield",
2069 "text" : "matchfield"
f245a28c
DM
2070 },
2071 {
2072 "children" : [
2073 {
2074 "info" : {
2075 "GET" : {
9fda36b0 2076 "description" : "Read 'Spam Filter' object settings.",
f245a28c 2077 "method" : "GET",
9fda36b0 2078 "name" : "read_spamfilter",
f245a28c
DM
2079 "parameters" : {
2080 "additionalProperties" : 0,
2081 "properties" : {
2082 "id" : {
2083 "description" : "Object ID.",
2084 "type" : "integer",
2085 "typetext" : "<integer>"
2086 },
2087 "ogroup" : {
2088 "description" : "Object Groups ID.",
2089 "type" : "integer",
2090 "typetext" : "<integer>"
2091 }
2092 }
2093 },
2094 "proxyto" : "master",
2095 "returns" : {
2096 "properties" : {
2097 "id" : {
2098 "type" : "integer"
2099 }
2100 },
2101 "type" : "object"
2102 }
2103 },
2104 "PUT" : {
9fda36b0 2105 "description" : "Update 'Spam Filter' object.",
f245a28c 2106 "method" : "PUT",
9fda36b0 2107 "name" : "update_spamfilter",
f245a28c
DM
2108 "parameters" : {
2109 "additionalProperties" : 0,
2110 "properties" : {
f245a28c
DM
2111 "id" : {
2112 "description" : "Object ID.",
2113 "type" : "integer",
2114 "typetext" : "<integer>"
2115 },
2116 "ogroup" : {
2117 "description" : "Object Groups ID.",
2118 "type" : "integer",
2119 "typetext" : "<integer>"
2120 },
9fda36b0
DM
2121 "spamlevel" : {
2122 "description" : "Spam Level",
2123 "minimum" : 0,
2124 "type" : "integer",
2125 "typetext" : "<integer> (0 - N)"
f245a28c
DM
2126 }
2127 }
2128 },
a55e94a6 2129 "protected" : 1,
f245a28c
DM
2130 "proxyto" : "master",
2131 "returns" : {
2132 "type" : "null"
2133 }
2134 }
2135 },
2136 "leaf" : 1,
9fda36b0 2137 "path" : "/config/ruledb/what/{ogroup}/spamfilter/{id}",
f245a28c
DM
2138 "text" : "{id}"
2139 }
2140 ],
2141 "info" : {
2142 "POST" : {
9fda36b0 2143 "description" : "Add 'Spam Filter' object.",
f245a28c 2144 "method" : "POST",
9fda36b0 2145 "name" : "spamfilter",
f245a28c
DM
2146 "parameters" : {
2147 "additionalProperties" : 0,
2148 "properties" : {
f245a28c
DM
2149 "ogroup" : {
2150 "description" : "Object Groups ID.",
2151 "type" : "integer",
2152 "typetext" : "<integer>"
2153 },
9fda36b0
DM
2154 "spamlevel" : {
2155 "description" : "Spam Level",
2156 "minimum" : 0,
2157 "type" : "integer",
2158 "typetext" : "<integer> (0 - N)"
f245a28c
DM
2159 }
2160 }
2161 },
a55e94a6 2162 "protected" : 1,
f245a28c
DM
2163 "proxyto" : "master",
2164 "returns" : {
2165 "description" : "The object ID.",
2166 "type" : "integer"
2167 }
2168 }
2169 },
2170 "leaf" : 0,
9fda36b0
DM
2171 "path" : "/config/ruledb/what/{ogroup}/spamfilter",
2172 "text" : "spamfilter"
410dc2c9 2173 },
9fda36b0
DM
2174 {
2175 "children" : [
2176 {
2177 "info" : {
2178 "GET" : {
2179 "description" : "Read 'Archive Filter' object settings.",
2180 "method" : "GET",
2181 "name" : "read_archivefilter",
2182 "parameters" : {
2183 "additionalProperties" : 0,
2184 "properties" : {
2185 "id" : {
2186 "description" : "Object ID.",
2187 "type" : "integer",
2188 "typetext" : "<integer>"
2189 },
2190 "ogroup" : {
2191 "description" : "Object Groups ID.",
2192 "type" : "integer",
2193 "typetext" : "<integer>"
2194 }
2195 }
2196 },
2197 "proxyto" : "master",
2198 "returns" : {
2199 "properties" : {
2200 "id" : {
2201 "type" : "integer"
2202 }
2203 },
2204 "type" : "object"
2205 }
2206 },
2207 "PUT" : {
2208 "description" : "Update 'Archive Filter' object.",
2209 "method" : "PUT",
2210 "name" : "update_archivefilter",
2211 "parameters" : {
2212 "additionalProperties" : 0,
2213 "properties" : {
2214 "contenttype" : {
2215 "description" : "Content Type",
2216 "maxLength" : 1024,
2217 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2218 "type" : "string"
2219 },
2220 "id" : {
2221 "description" : "Object ID.",
2222 "type" : "integer",
2223 "typetext" : "<integer>"
2224 },
2225 "ogroup" : {
2226 "description" : "Object Groups ID.",
2227 "type" : "integer",
2228 "typetext" : "<integer>"
2229 }
2230 }
2231 },
2232 "protected" : 1,
2233 "proxyto" : "master",
2234 "returns" : {
2235 "type" : "null"
2236 }
2237 }
2238 },
2239 "leaf" : 1,
2240 "path" : "/config/ruledb/what/{ogroup}/archivefilter/{id}",
2241 "text" : "{id}"
f245a28c 2242 }
9fda36b0
DM
2243 ],
2244 "info" : {
2245 "POST" : {
2246 "description" : "Add 'Archive Filter' object.",
2247 "method" : "POST",
2248 "name" : "archivefilter",
2249 "parameters" : {
2250 "additionalProperties" : 0,
2251 "properties" : {
2252 "contenttype" : {
2253 "description" : "Content Type",
2254 "maxLength" : 1024,
2255 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2256 "type" : "string"
2257 },
2258 "ogroup" : {
2259 "description" : "Object Groups ID.",
2260 "type" : "integer",
2261 "typetext" : "<integer>"
2262 }
f245a28c
DM
2263 }
2264 },
9fda36b0
DM
2265 "protected" : 1,
2266 "proxyto" : "master",
2267 "returns" : {
2268 "description" : "The object ID.",
2269 "type" : "integer"
f245a28c 2270 }
eff914dc
DM
2271 }
2272 },
9fda36b0 2273 "leaf" : 0,
732d76e1
DM
2274 "path" : "/config/ruledb/what/{ogroup}/archivefilter",
2275 "text" : "archivefilter"
2276 },
2277 {
2278 "children" : [
2279 {
2280 "info" : {
2281 "GET" : {
2282 "description" : "Read 'Match Filename' object settings.",
2283 "method" : "GET",
2284 "name" : "read_filenamefilter",
2285 "parameters" : {
2286 "additionalProperties" : 0,
2287 "properties" : {
2288 "id" : {
2289 "description" : "Object ID.",
2290 "type" : "integer",
2291 "typetext" : "<integer>"
2292 },
2293 "ogroup" : {
2294 "description" : "Object Groups ID.",
2295 "type" : "integer",
2296 "typetext" : "<integer>"
2297 }
2298 }
2299 },
2300 "proxyto" : "master",
2301 "returns" : {
2302 "properties" : {
2303 "id" : {
2304 "type" : "integer"
2305 }
2306 },
2307 "type" : "object"
2308 }
2309 },
2310 "PUT" : {
2311 "description" : "Update 'Match Filename' object.",
2312 "method" : "PUT",
2313 "name" : "update_filenamefilter",
2314 "parameters" : {
2315 "additionalProperties" : 0,
2316 "properties" : {
2317 "filename" : {
2318 "description" : "Filename filter",
2319 "maxLength" : 1024,
2320 "type" : "string",
2321 "typetext" : "<string>"
2322 },
2323 "id" : {
2324 "description" : "Object ID.",
2325 "type" : "integer",
2326 "typetext" : "<integer>"
2327 },
2328 "ogroup" : {
2329 "description" : "Object Groups ID.",
2330 "type" : "integer",
2331 "typetext" : "<integer>"
2332 }
2333 }
2334 },
2335 "protected" : 1,
2336 "proxyto" : "master",
2337 "returns" : {
2338 "type" : "null"
2339 }
2340 }
2341 },
2342 "leaf" : 1,
2343 "path" : "/config/ruledb/what/{ogroup}/filenamefilter/{id}",
2344 "text" : "{id}"
2345 }
2346 ],
2347 "info" : {
2348 "POST" : {
2349 "description" : "Add 'Match Filename' object.",
2350 "method" : "POST",
2351 "name" : "filenamefilter",
2352 "parameters" : {
2353 "additionalProperties" : 0,
2354 "properties" : {
2355 "filename" : {
2356 "description" : "Filename filter",
2357 "maxLength" : 1024,
2358 "type" : "string",
2359 "typetext" : "<string>"
2360 },
2361 "ogroup" : {
2362 "description" : "Object Groups ID.",
2363 "type" : "integer",
2364 "typetext" : "<integer>"
2365 }
2366 }
2367 },
2368 "protected" : 1,
2369 "proxyto" : "master",
2370 "returns" : {
2371 "description" : "The object ID.",
2372 "type" : "integer"
2373 }
2374 }
2375 },
2376 "leaf" : 0,
2377 "path" : "/config/ruledb/what/{ogroup}/filenamefilter",
2378 "text" : "filenamefilter"
410dc2c9 2379 },
9fda36b0
DM
2380 {
2381 "children" : [
2382 {
2383 "info" : {
2384 "GET" : {
732d76e1 2385 "description" : "Read 'Virus Filter' object settings.",
9fda36b0 2386 "method" : "GET",
732d76e1 2387 "name" : "read_virusfilter",
9fda36b0
DM
2388 "parameters" : {
2389 "additionalProperties" : 0,
2390 "properties" : {
2391 "id" : {
2392 "description" : "Object ID.",
2393 "type" : "integer",
2394 "typetext" : "<integer>"
2395 },
2396 "ogroup" : {
2397 "description" : "Object Groups ID.",
2398 "type" : "integer",
2399 "typetext" : "<integer>"
2400 }
2401 }
2402 },
2403 "proxyto" : "master",
2404 "returns" : {
2405 "properties" : {
2406 "id" : {
2407 "type" : "integer"
2408 }
2409 },
2410 "type" : "object"
2411 }
2412 },
2413 "PUT" : {
732d76e1 2414 "description" : "Update 'Virus Filter' object.",
9fda36b0 2415 "method" : "PUT",
732d76e1 2416 "name" : "update_virusfilter",
9fda36b0
DM
2417 "parameters" : {
2418 "additionalProperties" : 0,
2419 "properties" : {
9fda36b0
DM
2420 "id" : {
2421 "description" : "Object ID.",
2422 "type" : "integer",
2423 "typetext" : "<integer>"
2424 },
2425 "ogroup" : {
2426 "description" : "Object Groups ID.",
2427 "type" : "integer",
2428 "typetext" : "<integer>"
2429 }
2430 }
2431 },
2432 "protected" : 1,
2433 "proxyto" : "master",
2434 "returns" : {
2435 "type" : "null"
2436 }
2437 }
2438 },
2439 "leaf" : 1,
732d76e1 2440 "path" : "/config/ruledb/what/{ogroup}/virusfilter/{id}",
9fda36b0
DM
2441 "text" : "{id}"
2442 }
2443 ],
2444 "info" : {
2445 "POST" : {
732d76e1 2446 "description" : "Add 'Virus Filter' object.",
9fda36b0 2447 "method" : "POST",
732d76e1 2448 "name" : "virusfilter",
9fda36b0
DM
2449 "parameters" : {
2450 "additionalProperties" : 0,
2451 "properties" : {
9fda36b0
DM
2452 "ogroup" : {
2453 "description" : "Object Groups ID.",
2454 "type" : "integer",
2455 "typetext" : "<integer>"
2456 }
2457 }
2458 },
2459 "protected" : 1,
2460 "proxyto" : "master",
2461 "returns" : {
2462 "description" : "The object ID.",
2463 "type" : "integer"
2464 }
2465 }
2466 },
2467 "leaf" : 0,
732d76e1
DM
2468 "path" : "/config/ruledb/what/{ogroup}/virusfilter",
2469 "text" : "virusfilter"
9fda36b0
DM
2470 }
2471 ],
2472 "info" : {
2473 "DELETE" : {
2474 "description" : "Delete a 'what' group.",
2475 "method" : "DELETE",
2476 "name" : "delete_{$oclass}_group",
2477 "parameters" : {
2478 "additionalProperties" : 0,
2479 "properties" : {
2480 "ogroup" : {
2481 "description" : "Object Group ID.",
2482 "type" : "integer",
2483 "typetext" : "<integer>"
2484 }
2485 }
2486 },
732d76e1
DM
2487 "permissions" : {
2488 "check" : [
2489 "admin"
2490 ]
2491 },
9fda36b0
DM
2492 "protected" : 1,
2493 "proxyto" : "master",
2494 "returns" : {
2495 "type" : "null"
2496 }
2497 },
2498 "GET" : {
2499 "description" : "Directory index.",
2500 "method" : "GET",
2501 "name" : "index",
2502 "parameters" : {
2503 "additionalProperties" : 0,
2504 "properties" : {
2505 "ogroup" : {
2506 "description" : "Object Group ID.",
2507 "type" : "integer",
2508 "typetext" : "<integer>"
2509 }
2510 }
2511 },
732d76e1
DM
2512 "permissions" : {
2513 "check" : [
2514 "admin",
2515 "audit"
2516 ]
2517 },
9fda36b0
DM
2518 "returns" : {
2519 "items" : {
2520 "properties" : {
2521 "subdir" : {
2522 "type" : "string"
2523 }
2524 },
2525 "type" : "object"
2526 },
2527 "links" : [
2528 {
2529 "href" : "{subdir}",
2530 "rel" : "child"
2531 }
2532 ],
2533 "type" : "array"
2534 }
2535 }
2536 },
2537 "leaf" : 0,
2538 "path" : "/config/ruledb/what/{ogroup}",
2539 "text" : "{ogroup}"
2540 }
2541 ],
2542 "info" : {
2543 "GET" : {
2544 "description" : "Get list of 'what' groups.",
2545 "method" : "GET",
2546 "name" : "list_what_groups",
2547 "parameters" : {
2548 "additionalProperties" : 0
2549 },
732d76e1
DM
2550 "permissions" : {
2551 "check" : [
2552 "admin",
2553 "audit"
2554 ]
2555 },
9fda36b0
DM
2556 "proxyto" : "master",
2557 "returns" : {
2558 "items" : {
2559 "properties" : {
2560 "id" : {
2561 "type" : "integer"
2562 }
2563 },
2564 "type" : "object"
2565 },
2566 "type" : "array"
2567 }
2568 },
2569 "POST" : {
2570 "description" : "Create a new 'what' group.",
eff914dc 2571 "method" : "POST",
9fda36b0 2572 "name" : "create_what_group",
eff914dc
DM
2573 "parameters" : {
2574 "additionalProperties" : 0,
2575 "properties" : {
2576 "info" : {
2577 "description" : "Informational comment.",
2578 "maxLength" : 255,
2579 "optional" : 1,
2580 "type" : "string",
2581 "typetext" : "<string>"
2582 },
2583 "name" : {
2584 "description" : "Group name.",
2585 "maxLength" : 255,
2586 "type" : "string",
2587 "typetext" : "<string>"
2588 }
2589 }
2590 },
732d76e1
DM
2591 "permissions" : {
2592 "check" : [
2593 "admin"
2594 ]
2595 },
eff914dc
DM
2596 "protected" : 1,
2597 "proxyto" : "master",
2598 "returns" : {
2599 "type" : "integer"
2600 }
410dc2c9
DM
2601 }
2602 },
f245a28c 2603 "leaf" : 0,
9fda36b0
DM
2604 "path" : "/config/ruledb/what",
2605 "text" : "what"
410dc2c9
DM
2606 },
2607 {
f245a28c
DM
2608 "children" : [
2609 {
2610 "children" : [
2611 {
eff914dc 2612 "info" : {
f245a28c 2613 "GET" : {
9fda36b0 2614 "description" : "Get 'when' group properties",
f245a28c
DM
2615 "method" : "GET",
2616 "name" : "get_config",
2617 "parameters" : {
2618 "additionalProperties" : 0,
2619 "properties" : {
2620 "ogroup" : {
2621 "description" : "Object Group ID.",
2622 "type" : "integer",
2623 "typetext" : "<integer>"
2624 }
2625 }
2626 },
732d76e1
DM
2627 "permissions" : {
2628 "check" : [
2629 "admin",
2630 "audit"
2631 ]
2632 },
f245a28c
DM
2633 "proxyto" : "master",
2634 "returns" : {
2635 "properties" : {
2636 "id" : {
2637 "type" : "integer"
2638 },
2639 "info" : {
2640 "type" : "string"
2641 },
2642 "name" : {
2643 "type" : "string"
2644 }
2645 },
2646 "type" : "object"
2647 }
2648 },
2649 "PUT" : {
9fda36b0 2650 "description" : "Modify 'when' group properties",
f245a28c
DM
2651 "method" : "PUT",
2652 "name" : "set_config",
2653 "parameters" : {
2654 "additionalProperties" : 0,
2655 "properties" : {
2656 "info" : {
2657 "description" : "Informational comment.",
2658 "maxLength" : 255,
2659 "optional" : 1,
2660 "type" : "string",
2661 "typetext" : "<string>"
2662 },
2663 "name" : {
2664 "description" : "Group name.",
2665 "maxLength" : 255,
2666 "optional" : 1,
2667 "type" : "string",
2668 "typetext" : "<string>"
2669 },
2670 "ogroup" : {
2671 "description" : "Object Group ID.",
2672 "type" : "integer",
2673 "typetext" : "<integer>"
2674 }
2675 }
2676 },
732d76e1
DM
2677 "permissions" : {
2678 "check" : [
2679 "admin"
2680 ]
2681 },
d7cd791b 2682 "protected" : 1,
f245a28c
DM
2683 "proxyto" : "master",
2684 "returns" : {
2685 "type" : "null"
2686 }
2687 }
eff914dc 2688 },
f245a28c 2689 "leaf" : 1,
9fda36b0 2690 "path" : "/config/ruledb/when/{ogroup}/config",
f245a28c
DM
2691 "text" : "config"
2692 },
eff914dc
DM
2693 {
2694 "children" : [
2695 {
2696 "info" : {
2697 "DELETE" : {
9fda36b0 2698 "description" : "Remove an object from the 'when' group.",
eff914dc
DM
2699 "method" : "DELETE",
2700 "name" : "delete_object",
2701 "parameters" : {
2702 "additionalProperties" : 0,
2703 "properties" : {
2704 "id" : {
2705 "description" : "Object ID.",
2706 "type" : "integer",
2707 "typetext" : "<integer>"
2708 },
2709 "ogroup" : {
2710 "description" : "Object Group ID.",
2711 "type" : "integer",
2712 "typetext" : "<integer>"
2713 }
2714 }
2715 },
732d76e1
DM
2716 "permissions" : {
2717 "check" : [
2718 "admin"
2719 ]
2720 },
a55e94a6 2721 "protected" : 1,
eff914dc
DM
2722 "proxyto" : "master",
2723 "returns" : {
2724 "type" : "null"
2725 }
2726 }
2727 },
2728 "leaf" : 1,
9fda36b0 2729 "path" : "/config/ruledb/when/{ogroup}/objects/{id}",
eff914dc
DM
2730 "text" : "{id}"
2731 }
2732 ],
2733 "info" : {
2734 "GET" : {
9fda36b0 2735 "description" : "List 'when' group objects.",
eff914dc
DM
2736 "method" : "GET",
2737 "name" : "objects",
2738 "parameters" : {
2739 "additionalProperties" : 0,
2740 "properties" : {
2741 "ogroup" : {
2742 "description" : "Object Group ID.",
2743 "type" : "integer",
2744 "typetext" : "<integer>"
2745 }
2746 }
2747 },
732d76e1
DM
2748 "permissions" : {
2749 "check" : [
2750 "admin",
2751 "audit"
2752 ]
2753 },
eff914dc
DM
2754 "proxyto" : "master",
2755 "returns" : {
2756 "items" : {
2757 "properties" : {
2758 "id" : {
2759 "type" : "integer"
2760 }
2761 },
2762 "type" : "object"
2763 },
2764 "links" : [
2765 {
2766 "href" : "{id}",
2767 "rel" : "child"
2768 }
2769 ],
2770 "type" : "array"
2771 }
2772 }
2773 },
2774 "leaf" : 0,
9fda36b0 2775 "path" : "/config/ruledb/when/{ogroup}/objects",
eff914dc
DM
2776 "text" : "objects"
2777 },
2778 {
2779 "children" : [
2780 {
2781 "info" : {
2782 "GET" : {
9fda36b0 2783 "description" : "Read 'TimeFrame' object settings.",
eff914dc 2784 "method" : "GET",
9fda36b0 2785 "name" : "read_timeframe",
eff914dc
DM
2786 "parameters" : {
2787 "additionalProperties" : 0,
2788 "properties" : {
2789 "id" : {
2790 "description" : "Object ID.",
2791 "type" : "integer",
2792 "typetext" : "<integer>"
2793 },
2794 "ogroup" : {
2795 "description" : "Object Groups ID.",
2796 "type" : "integer",
2797 "typetext" : "<integer>"
2798 }
2799 }
2800 },
2801 "proxyto" : "master",
2802 "returns" : {
2803 "properties" : {
2804 "id" : {
2805 "type" : "integer"
2806 }
2807 },
2808 "type" : "object"
2809 }
2810 },
2811 "PUT" : {
9fda36b0 2812 "description" : "Update 'TimeFrame' object.",
eff914dc 2813 "method" : "PUT",
9fda36b0 2814 "name" : "update_timeframe",
eff914dc
DM
2815 "parameters" : {
2816 "additionalProperties" : 0,
2817 "properties" : {
9fda36b0
DM
2818 "end" : {
2819 "description" : "End time in `H:i` format (00:00).",
2820 "pattern" : "\\d?\\d:\\d?\\d",
2821 "type" : "string"
eff914dc
DM
2822 },
2823 "id" : {
2824 "description" : "Object ID.",
2825 "type" : "integer",
2826 "typetext" : "<integer>"
2827 },
2828 "ogroup" : {
2829 "description" : "Object Groups ID.",
2830 "type" : "integer",
2831 "typetext" : "<integer>"
9fda36b0
DM
2832 },
2833 "start" : {
2834 "description" : "Start time in `H:i` format (00:00).",
2835 "pattern" : "\\d?\\d:\\d?\\d",
2836 "type" : "string"
eff914dc
DM
2837 }
2838 }
2839 },
a55e94a6 2840 "protected" : 1,
eff914dc
DM
2841 "proxyto" : "master",
2842 "returns" : {
2843 "type" : "null"
2844 }
2845 }
2846 },
2847 "leaf" : 1,
9fda36b0 2848 "path" : "/config/ruledb/when/{ogroup}/timeframe/{id}",
eff914dc
DM
2849 "text" : "{id}"
2850 }
2851 ],
2852 "info" : {
2853 "POST" : {
9fda36b0 2854 "description" : "Add 'TimeFrame' object.",
eff914dc 2855 "method" : "POST",
9fda36b0 2856 "name" : "timeframe",
eff914dc
DM
2857 "parameters" : {
2858 "additionalProperties" : 0,
2859 "properties" : {
9fda36b0
DM
2860 "end" : {
2861 "description" : "End time in `H:i` format (00:00).",
2862 "pattern" : "\\d?\\d:\\d?\\d",
2863 "type" : "string"
eff914dc
DM
2864 },
2865 "ogroup" : {
2866 "description" : "Object Groups ID.",
2867 "type" : "integer",
2868 "typetext" : "<integer>"
9fda36b0
DM
2869 },
2870 "start" : {
2871 "description" : "Start time in `H:i` format (00:00).",
2872 "pattern" : "\\d?\\d:\\d?\\d",
2873 "type" : "string"
eff914dc
DM
2874 }
2875 }
2876 },
a55e94a6 2877 "protected" : 1,
eff914dc
DM
2878 "proxyto" : "master",
2879 "returns" : {
2880 "description" : "The object ID.",
2881 "type" : "integer"
2882 }
2883 }
2884 },
2885 "leaf" : 0,
9fda36b0
DM
2886 "path" : "/config/ruledb/when/{ogroup}/timeframe",
2887 "text" : "timeframe"
2888 }
2889 ],
2890 "info" : {
2891 "DELETE" : {
2892 "description" : "Delete a 'when' group.",
2893 "method" : "DELETE",
2894 "name" : "delete_{$oclass}_group",
2895 "parameters" : {
2896 "additionalProperties" : 0,
2897 "properties" : {
2898 "ogroup" : {
2899 "description" : "Object Group ID.",
2900 "type" : "integer",
2901 "typetext" : "<integer>"
2902 }
2903 }
2904 },
732d76e1
DM
2905 "permissions" : {
2906 "check" : [
2907 "admin"
2908 ]
2909 },
9fda36b0
DM
2910 "protected" : 1,
2911 "proxyto" : "master",
2912 "returns" : {
2913 "type" : "null"
2914 }
2915 },
2916 "GET" : {
2917 "description" : "Directory index.",
2918 "method" : "GET",
2919 "name" : "index",
2920 "parameters" : {
2921 "additionalProperties" : 0,
2922 "properties" : {
2923 "ogroup" : {
2924 "description" : "Object Group ID.",
2925 "type" : "integer",
2926 "typetext" : "<integer>"
2927 }
2928 }
2929 },
732d76e1
DM
2930 "permissions" : {
2931 "check" : [
2932 "admin",
2933 "audit"
2934 ]
2935 },
9fda36b0
DM
2936 "returns" : {
2937 "items" : {
2938 "properties" : {
2939 "subdir" : {
2940 "type" : "string"
eff914dc
DM
2941 }
2942 },
9fda36b0
DM
2943 "type" : "object"
2944 },
2945 "links" : [
2946 {
2947 "href" : "{subdir}",
2948 "rel" : "child"
2949 }
2950 ],
2951 "type" : "array"
2952 }
2953 }
2954 },
2955 "leaf" : 0,
2956 "path" : "/config/ruledb/when/{ogroup}",
2957 "text" : "{ogroup}"
2958 }
2959 ],
2960 "info" : {
2961 "GET" : {
2962 "description" : "Get list of 'when' groups.",
2963 "method" : "GET",
2964 "name" : "list_when_groups",
2965 "parameters" : {
2966 "additionalProperties" : 0
2967 },
732d76e1
DM
2968 "permissions" : {
2969 "check" : [
2970 "admin",
2971 "audit"
2972 ]
2973 },
9fda36b0
DM
2974 "proxyto" : "master",
2975 "returns" : {
2976 "items" : {
2977 "properties" : {
2978 "id" : {
2979 "type" : "integer"
eff914dc 2980 }
9fda36b0
DM
2981 },
2982 "type" : "object"
2983 },
2984 "type" : "array"
2985 }
2986 },
2987 "POST" : {
2988 "description" : "Create a new 'when' group.",
2989 "method" : "POST",
2990 "name" : "create_when_group",
2991 "parameters" : {
2992 "additionalProperties" : 0,
2993 "properties" : {
eff914dc 2994 "info" : {
9fda36b0
DM
2995 "description" : "Informational comment.",
2996 "maxLength" : 255,
2997 "optional" : 1,
2998 "type" : "string",
2999 "typetext" : "<string>"
3000 },
3001 "name" : {
3002 "description" : "Group name.",
3003 "maxLength" : 255,
3004 "type" : "string",
3005 "typetext" : "<string>"
3006 }
3007 }
3008 },
732d76e1
DM
3009 "permissions" : {
3010 "check" : [
3011 "admin"
3012 ]
3013 },
9fda36b0
DM
3014 "protected" : 1,
3015 "proxyto" : "master",
3016 "returns" : {
3017 "type" : "integer"
3018 }
3019 }
3020 },
3021 "leaf" : 0,
3022 "path" : "/config/ruledb/when",
3023 "text" : "when"
3024 },
3025 {
3026 "children" : [
3027 {
3028 "children" : [
3029 {
3030 "info" : {
3031 "GET" : {
3032 "description" : "Get 'who' group properties",
3033 "method" : "GET",
3034 "name" : "get_config",
eff914dc
DM
3035 "parameters" : {
3036 "additionalProperties" : 0,
3037 "properties" : {
9fda36b0
DM
3038 "ogroup" : {
3039 "description" : "Object Group ID.",
3040 "type" : "integer",
3041 "typetext" : "<integer>"
3042 }
3043 }
3044 },
732d76e1
DM
3045 "permissions" : {
3046 "check" : [
3047 "admin",
3048 "audit"
3049 ]
3050 },
9fda36b0
DM
3051 "proxyto" : "master",
3052 "returns" : {
3053 "properties" : {
3054 "id" : {
3055 "type" : "integer"
3056 },
3057 "info" : {
3058 "type" : "string"
3059 },
3060 "name" : {
3061 "type" : "string"
3062 }
3063 },
3064 "type" : "object"
3065 }
3066 },
3067 "PUT" : {
3068 "description" : "Modify 'who' group properties",
3069 "method" : "PUT",
3070 "name" : "set_config",
3071 "parameters" : {
3072 "additionalProperties" : 0,
3073 "properties" : {
3074 "info" : {
3075 "description" : "Informational comment.",
3076 "maxLength" : 255,
3077 "optional" : 1,
3078 "type" : "string",
3079 "typetext" : "<string>"
3080 },
3081 "name" : {
3082 "description" : "Group name.",
3083 "maxLength" : 255,
3084 "optional" : 1,
eff914dc
DM
3085 "type" : "string",
3086 "typetext" : "<string>"
3087 },
3088 "ogroup" : {
9fda36b0 3089 "description" : "Object Group ID.",
eff914dc
DM
3090 "type" : "integer",
3091 "typetext" : "<integer>"
3092 }
3093 }
3094 },
732d76e1
DM
3095 "permissions" : {
3096 "check" : [
3097 "admin"
3098 ]
3099 },
a55e94a6 3100 "protected" : 1,
eff914dc
DM
3101 "proxyto" : "master",
3102 "returns" : {
9fda36b0 3103 "type" : "null"
eff914dc
DM
3104 }
3105 }
3106 },
9fda36b0
DM
3107 "leaf" : 1,
3108 "path" : "/config/ruledb/who/{ogroup}/config",
3109 "text" : "config"
eff914dc
DM
3110 },
3111 {
3112 "children" : [
3113 {
3114 "info" : {
9fda36b0
DM
3115 "DELETE" : {
3116 "description" : "Remove an object from the 'who' group.",
3117 "method" : "DELETE",
3118 "name" : "delete_object",
eff914dc
DM
3119 "parameters" : {
3120 "additionalProperties" : 0,
3121 "properties" : {
3122 "id" : {
3123 "description" : "Object ID.",
3124 "type" : "integer",
3125 "typetext" : "<integer>"
3126 },
3127 "ogroup" : {
9fda36b0 3128 "description" : "Object Group ID.",
eff914dc
DM
3129 "type" : "integer",
3130 "typetext" : "<integer>"
3131 }
3132 }
3133 },
732d76e1
DM
3134 "permissions" : {
3135 "check" : [
3136 "admin"
3137 ]
3138 },
9fda36b0 3139 "protected" : 1,
eff914dc
DM
3140 "proxyto" : "master",
3141 "returns" : {
9fda36b0 3142 "type" : "null"
eff914dc
DM
3143 }
3144 }
3145 },
3146 "leaf" : 1,
9fda36b0 3147 "path" : "/config/ruledb/who/{ogroup}/objects/{id}",
eff914dc
DM
3148 "text" : "{id}"
3149 }
3150 ],
3151 "info" : {
9fda36b0
DM
3152 "GET" : {
3153 "description" : "List 'who' group objects.",
3154 "method" : "GET",
3155 "name" : "objects",
eff914dc
DM
3156 "parameters" : {
3157 "additionalProperties" : 0,
3158 "properties" : {
3159 "ogroup" : {
9fda36b0 3160 "description" : "Object Group ID.",
eff914dc
DM
3161 "type" : "integer",
3162 "typetext" : "<integer>"
eff914dc
DM
3163 }
3164 }
3165 },
732d76e1
DM
3166 "permissions" : {
3167 "check" : [
3168 "admin",
3169 "audit"
3170 ]
3171 },
eff914dc
DM
3172 "proxyto" : "master",
3173 "returns" : {
9fda36b0
DM
3174 "items" : {
3175 "properties" : {
3176 "id" : {
3177 "type" : "integer"
3178 }
3179 },
3180 "type" : "object"
3181 },
3182 "links" : [
3183 {
3184 "href" : "{id}",
3185 "rel" : "child"
3186 }
3187 ],
3188 "type" : "array"
eff914dc
DM
3189 }
3190 }
3191 },
3192 "leaf" : 0,
9fda36b0
DM
3193 "path" : "/config/ruledb/who/{ogroup}/objects",
3194 "text" : "objects"
eff914dc
DM
3195 },
3196 {
3197 "children" : [
3198 {
3199 "info" : {
3200 "GET" : {
9fda36b0 3201 "description" : "Read 'Mail address' object settings.",
eff914dc 3202 "method" : "GET",
9fda36b0 3203 "name" : "read_email",
eff914dc
DM
3204 "parameters" : {
3205 "additionalProperties" : 0,
3206 "properties" : {
3207 "id" : {
3208 "description" : "Object ID.",
3209 "type" : "integer",
3210 "typetext" : "<integer>"
3211 },
3212 "ogroup" : {
3213 "description" : "Object Groups ID.",
3214 "type" : "integer",
3215 "typetext" : "<integer>"
3216 }
3217 }
3218 },
3219 "proxyto" : "master",
3220 "returns" : {
3221 "properties" : {
3222 "id" : {
3223 "type" : "integer"
3224 }
3225 },
3226 "type" : "object"
3227 }
3228 },
3229 "PUT" : {
9fda36b0 3230 "description" : "Update 'Mail address' object.",
eff914dc 3231 "method" : "PUT",
9fda36b0 3232 "name" : "update_email",
eff914dc
DM
3233 "parameters" : {
3234 "additionalProperties" : 0,
3235 "properties" : {
9fda36b0
DM
3236 "email" : {
3237 "description" : "Email address.",
3238 "format" : "email",
3239 "type" : "string",
3240 "typetext" : "<string>"
3241 },
eff914dc
DM
3242 "id" : {
3243 "description" : "Object ID.",
3244 "type" : "integer",
3245 "typetext" : "<integer>"
3246 },
eff914dc
DM
3247 "ogroup" : {
3248 "description" : "Object Groups ID.",
3249 "type" : "integer",
3250 "typetext" : "<integer>"
3251 }
3252 }
3253 },
a55e94a6 3254 "protected" : 1,
eff914dc
DM
3255 "proxyto" : "master",
3256 "returns" : {
3257 "type" : "null"
3258 }
3259 }
3260 },
3261 "leaf" : 1,
9fda36b0 3262 "path" : "/config/ruledb/who/{ogroup}/email/{id}",
eff914dc
DM
3263 "text" : "{id}"
3264 }
3265 ],
3266 "info" : {
3267 "POST" : {
9fda36b0 3268 "description" : "Add 'Mail address' object.",
eff914dc 3269 "method" : "POST",
9fda36b0 3270 "name" : "email",
eff914dc
DM
3271 "parameters" : {
3272 "additionalProperties" : 0,
3273 "properties" : {
9fda36b0
DM
3274 "email" : {
3275 "description" : "Email address.",
3276 "format" : "email",
eff914dc
DM
3277 "type" : "string",
3278 "typetext" : "<string>"
3279 },
3280 "ogroup" : {
3281 "description" : "Object Groups ID.",
3282 "type" : "integer",
3283 "typetext" : "<integer>"
3284 }
3285 }
3286 },
a55e94a6 3287 "protected" : 1,
eff914dc
DM
3288 "proxyto" : "master",
3289 "returns" : {
3290 "description" : "The object ID.",
3291 "type" : "integer"
3292 }
3293 }
3294 },
3295 "leaf" : 0,
9fda36b0
DM
3296 "path" : "/config/ruledb/who/{ogroup}/email",
3297 "text" : "email"
eff914dc
DM
3298 },
3299 {
3300 "children" : [
3301 {
3302 "info" : {
3303 "GET" : {
9fda36b0 3304 "description" : "Read 'Domain' object settings.",
eff914dc 3305 "method" : "GET",
9fda36b0 3306 "name" : "read_domain",
eff914dc
DM
3307 "parameters" : {
3308 "additionalProperties" : 0,
3309 "properties" : {
3310 "id" : {
3311 "description" : "Object ID.",
3312 "type" : "integer",
3313 "typetext" : "<integer>"
3314 },
3315 "ogroup" : {
3316 "description" : "Object Groups ID.",
3317 "type" : "integer",
3318 "typetext" : "<integer>"
3319 }
3320 }
3321 },
3322 "proxyto" : "master",
3323 "returns" : {
3324 "properties" : {
3325 "id" : {
3326 "type" : "integer"
3327 }
3328 },
3329 "type" : "object"
3330 }
3331 },
3332 "PUT" : {
9fda36b0 3333 "description" : "Update 'Domain' object.",
eff914dc 3334 "method" : "PUT",
9fda36b0 3335 "name" : "update_domain",
eff914dc
DM
3336 "parameters" : {
3337 "additionalProperties" : 0,
3338 "properties" : {
9fda36b0
DM
3339 "domain" : {
3340 "description" : "DNS domain name (Sender).",
3341 "format" : "dns-name",
eff914dc
DM
3342 "type" : "string",
3343 "typetext" : "<string>"
3344 },
3345 "id" : {
3346 "description" : "Object ID.",
3347 "type" : "integer",
3348 "typetext" : "<integer>"
3349 },
3350 "ogroup" : {
3351 "description" : "Object Groups ID.",
3352 "type" : "integer",
3353 "typetext" : "<integer>"
3354 }
3355 }
3356 },
a55e94a6 3357 "protected" : 1,
eff914dc
DM
3358 "proxyto" : "master",
3359 "returns" : {
3360 "type" : "null"
3361 }
3362 }
3363 },
3364 "leaf" : 1,
9fda36b0 3365 "path" : "/config/ruledb/who/{ogroup}/domain/{id}",
eff914dc
DM
3366 "text" : "{id}"
3367 }
3368 ],
3369 "info" : {
3370 "POST" : {
9fda36b0 3371 "description" : "Add 'Domain' object.",
eff914dc 3372 "method" : "POST",
9fda36b0 3373 "name" : "domain",
eff914dc
DM
3374 "parameters" : {
3375 "additionalProperties" : 0,
3376 "properties" : {
9fda36b0
DM
3377 "domain" : {
3378 "description" : "DNS domain name (Sender).",
3379 "format" : "dns-name",
eff914dc
DM
3380 "type" : "string",
3381 "typetext" : "<string>"
3382 },
3383 "ogroup" : {
3384 "description" : "Object Groups ID.",
3385 "type" : "integer",
3386 "typetext" : "<integer>"
3387 }
3388 }
3389 },
a55e94a6 3390 "protected" : 1,
eff914dc
DM
3391 "proxyto" : "master",
3392 "returns" : {
3393 "description" : "The object ID.",
3394 "type" : "integer"
3395 }
3396 }
3397 },
3398 "leaf" : 0,
9fda36b0
DM
3399 "path" : "/config/ruledb/who/{ogroup}/domain",
3400 "text" : "domain"
a55e94a6
DM
3401 },
3402 {
3403 "children" : [
3404 {
3405 "info" : {
3406 "GET" : {
9fda36b0 3407 "description" : "Read 'Regular Expression' object settings.",
a55e94a6 3408 "method" : "GET",
9fda36b0 3409 "name" : "read_regex",
a55e94a6
DM
3410 "parameters" : {
3411 "additionalProperties" : 0,
3412 "properties" : {
3413 "id" : {
3414 "description" : "Object ID.",
3415 "type" : "integer",
3416 "typetext" : "<integer>"
3417 },
3418 "ogroup" : {
3419 "description" : "Object Groups ID.",
3420 "type" : "integer",
3421 "typetext" : "<integer>"
3422 }
3423 }
3424 },
3425 "proxyto" : "master",
3426 "returns" : {
3427 "properties" : {
3428 "id" : {
3429 "type" : "integer"
3430 }
3431 },
3432 "type" : "object"
3433 }
3434 },
3435 "PUT" : {
9fda36b0 3436 "description" : "Update 'Regular Expression' object.",
a55e94a6 3437 "method" : "PUT",
9fda36b0 3438 "name" : "update_regex",
a55e94a6
DM
3439 "parameters" : {
3440 "additionalProperties" : 0,
3441 "properties" : {
a55e94a6
DM
3442 "id" : {
3443 "description" : "Object ID.",
3444 "type" : "integer",
3445 "typetext" : "<integer>"
3446 },
a55e94a6
DM
3447 "ogroup" : {
3448 "description" : "Object Groups ID.",
3449 "type" : "integer",
3450 "typetext" : "<integer>"
3451 },
9fda36b0
DM
3452 "regex" : {
3453 "description" : "Email address regular expression.",
3454 "maxLength" : 1024,
a55e94a6
DM
3455 "type" : "string",
3456 "typetext" : "<string>"
3457 }
3458 }
3459 },
3460 "protected" : 1,
3461 "proxyto" : "master",
3462 "returns" : {
3463 "type" : "null"
3464 }
3465 }
3466 },
3467 "leaf" : 1,
9fda36b0 3468 "path" : "/config/ruledb/who/{ogroup}/regex/{id}",
a55e94a6
DM
3469 "text" : "{id}"
3470 }
3471 ],
3472 "info" : {
3473 "POST" : {
9fda36b0 3474 "description" : "Add 'Regular Expression' object.",
a55e94a6 3475 "method" : "POST",
9fda36b0 3476 "name" : "regex",
a55e94a6
DM
3477 "parameters" : {
3478 "additionalProperties" : 0,
3479 "properties" : {
a55e94a6
DM
3480 "ogroup" : {
3481 "description" : "Object Groups ID.",
3482 "type" : "integer",
3483 "typetext" : "<integer>"
3484 },
9fda36b0
DM
3485 "regex" : {
3486 "description" : "Email address regular expression.",
3487 "maxLength" : 1024,
a55e94a6
DM
3488 "type" : "string",
3489 "typetext" : "<string>"
3490 }
3491 }
3492 },
3493 "protected" : 1,
3494 "proxyto" : "master",
3495 "returns" : {
3496 "description" : "The object ID.",
3497 "type" : "integer"
3498 }
3499 }
3500 },
3501 "leaf" : 0,
9fda36b0
DM
3502 "path" : "/config/ruledb/who/{ogroup}/regex",
3503 "text" : "regex"
a55e94a6
DM
3504 },
3505 {
3506 "children" : [
3507 {
3508 "info" : {
3509 "GET" : {
9fda36b0 3510 "description" : "Read 'IP Address' object settings.",
a55e94a6 3511 "method" : "GET",
9fda36b0 3512 "name" : "read_ip",
a55e94a6
DM
3513 "parameters" : {
3514 "additionalProperties" : 0,
3515 "properties" : {
3516 "id" : {
3517 "description" : "Object ID.",
3518 "type" : "integer",
3519 "typetext" : "<integer>"
3520 },
3521 "ogroup" : {
3522 "description" : "Object Groups ID.",
3523 "type" : "integer",
3524 "typetext" : "<integer>"
3525 }
3526 }
3527 },
3528 "proxyto" : "master",
3529 "returns" : {
3530 "properties" : {
3531 "id" : {
3532 "type" : "integer"
3533 }
3534 },
3535 "type" : "object"
3536 }
3537 },
3538 "PUT" : {
9fda36b0 3539 "description" : "Update 'IP Address' object.",
a55e94a6 3540 "method" : "PUT",
9fda36b0 3541 "name" : "update_ip",
a55e94a6
DM
3542 "parameters" : {
3543 "additionalProperties" : 0,
3544 "properties" : {
a55e94a6
DM
3545 "id" : {
3546 "description" : "Object ID.",
3547 "type" : "integer",
3548 "typetext" : "<integer>"
3549 },
9fda36b0
DM
3550 "ip" : {
3551 "description" : "IP address",
3552 "format" : "ip",
3553 "type" : "string",
3554 "typetext" : "<string>"
3555 },
a55e94a6
DM
3556 "ogroup" : {
3557 "description" : "Object Groups ID.",
3558 "type" : "integer",
3559 "typetext" : "<integer>"
a55e94a6
DM
3560 }
3561 }
3562 },
3563 "protected" : 1,
3564 "proxyto" : "master",
3565 "returns" : {
3566 "type" : "null"
3567 }
3568 }
3569 },
3570 "leaf" : 1,
9fda36b0 3571 "path" : "/config/ruledb/who/{ogroup}/ip/{id}",
a55e94a6
DM
3572 "text" : "{id}"
3573 }
3574 ],
3575 "info" : {
3576 "POST" : {
9fda36b0 3577 "description" : "Add 'IP Address' object.",
a55e94a6 3578 "method" : "POST",
9fda36b0 3579 "name" : "ip",
a55e94a6
DM
3580 "parameters" : {
3581 "additionalProperties" : 0,
3582 "properties" : {
9fda36b0
DM
3583 "ip" : {
3584 "description" : "IP address",
3585 "format" : "ip",
a55e94a6
DM
3586 "type" : "string",
3587 "typetext" : "<string>"
3588 },
3589 "ogroup" : {
3590 "description" : "Object Groups ID.",
3591 "type" : "integer",
3592 "typetext" : "<integer>"
a55e94a6
DM
3593 }
3594 }
3595 },
3596 "protected" : 1,
3597 "proxyto" : "master",
3598 "returns" : {
3599 "description" : "The object ID.",
3600 "type" : "integer"
3601 }
3602 }
3603 },
3604 "leaf" : 0,
9fda36b0
DM
3605 "path" : "/config/ruledb/who/{ogroup}/ip",
3606 "text" : "ip"
eff914dc 3607 },
9fda36b0
DM
3608 {
3609 "children" : [
3610 {
3611 "info" : {
3612 "GET" : {
3613 "description" : "Read 'IP Network' object settings.",
3614 "method" : "GET",
3615 "name" : "read_network",
3616 "parameters" : {
3617 "additionalProperties" : 0,
3618 "properties" : {
3619 "id" : {
3620 "description" : "Object ID.",
3621 "type" : "integer",
3622 "typetext" : "<integer>"
3623 },
3624 "ogroup" : {
3625 "description" : "Object Groups ID.",
3626 "type" : "integer",
3627 "typetext" : "<integer>"
3628 }
3629 }
3630 },
3631 "proxyto" : "master",
3632 "returns" : {
3633 "properties" : {
3634 "id" : {
3635 "type" : "integer"
3636 }
3637 },
3638 "type" : "object"
3639 }
3640 },
3641 "PUT" : {
3642 "description" : "Update 'IP Network' object.",
3643 "method" : "PUT",
3644 "name" : "update_network",
3645 "parameters" : {
3646 "additionalProperties" : 0,
3647 "properties" : {
3648 "cidr" : {
3649 "description" : "Network address in CIDR notation.",
3650 "format" : "CIDR",
3651 "type" : "string",
3652 "typetext" : "<string>"
3653 },
3654 "id" : {
3655 "description" : "Object ID.",
3656 "type" : "integer",
3657 "typetext" : "<integer>"
3658 },
3659 "ogroup" : {
3660 "description" : "Object Groups ID.",
3661 "type" : "integer",
3662 "typetext" : "<integer>"
3663 }
3664 }
3665 },
3666 "protected" : 1,
3667 "proxyto" : "master",
3668 "returns" : {
3669 "type" : "null"
3670 }
3671 }
3672 },
3673 "leaf" : 1,
3674 "path" : "/config/ruledb/who/{ogroup}/network/{id}",
3675 "text" : "{id}"
eff914dc 3676 }
9fda36b0
DM
3677 ],
3678 "info" : {
3679 "POST" : {
3680 "description" : "Add 'IP Network' object.",
3681 "method" : "POST",
3682 "name" : "network",
3683 "parameters" : {
3684 "additionalProperties" : 0,
3685 "properties" : {
3686 "cidr" : {
3687 "description" : "Network address in CIDR notation.",
3688 "format" : "CIDR",
3689 "type" : "string",
3690 "typetext" : "<string>"
3691 },
3692 "ogroup" : {
3693 "description" : "Object Groups ID.",
3694 "type" : "integer",
3695 "typetext" : "<integer>"
3696 }
eff914dc
DM
3697 }
3698 },
9fda36b0
DM
3699 "protected" : 1,
3700 "proxyto" : "master",
3701 "returns" : {
3702 "description" : "The object ID.",
3703 "type" : "integer"
eff914dc 3704 }
eff914dc
DM
3705 }
3706 },
9fda36b0
DM
3707 "leaf" : 0,
3708 "path" : "/config/ruledb/who/{ogroup}/network",
3709 "text" : "network"
410dc2c9 3710 },
9fda36b0
DM
3711 {
3712 "children" : [
3713 {
3714 "info" : {
3715 "GET" : {
3716 "description" : "Read 'LDAP Group' object settings.",
3717 "method" : "GET",
3718 "name" : "read_ldap",
3719 "parameters" : {
3720 "additionalProperties" : 0,
3721 "properties" : {
3722 "id" : {
3723 "description" : "Object ID.",
3724 "type" : "integer",
3725 "typetext" : "<integer>"
3726 },
3727 "ogroup" : {
3728 "description" : "Object Groups ID.",
3729 "type" : "integer",
3730 "typetext" : "<integer>"
3731 }
3732 }
3733 },
3734 "proxyto" : "master",
3735 "returns" : {
3736 "properties" : {
3737 "id" : {
3738 "type" : "integer"
3739 }
3740 },
3741 "type" : "object"
3742 }
3743 },
3744 "PUT" : {
3745 "description" : "Update 'LDAP Group' object.",
3746 "method" : "PUT",
3747 "name" : "update_ldap",
3748 "parameters" : {
3749 "additionalProperties" : 0,
3750 "properties" : {
3751 "group" : {
3752 "description" : "LDAP Group DN",
3753 "maxLength" : 1024,
3754 "minLength" : 1,
3755 "optional" : 1,
3756 "type" : "string",
3757 "typetext" : "<string>"
3758 },
3759 "id" : {
3760 "description" : "Object ID.",
3761 "type" : "integer",
3762 "typetext" : "<integer>"
3763 },
3764 "mode" : {
3765 "description" : "Operational mode. You can either match 'any' user, match when no such user exists with 'none', or match when the user is member of a specific group.",
3766 "enum" : [
3767 "any",
3768 "none",
3769 "group"
3770 ],
3771 "type" : "string"
3772 },
3773 "ogroup" : {
3774 "description" : "Object Groups ID.",
3775 "type" : "integer",
3776 "typetext" : "<integer>"
3777 },
3778 "profile" : {
3779 "description" : "Profile ID.",
3780 "format" : "pve-configid",
3781 "optional" : 1,
3782 "type" : "string",
3783 "typetext" : "<string>"
3784 }
3785 }
3786 },
3787 "protected" : 1,
3788 "proxyto" : "master",
3789 "returns" : {
3790 "type" : "null"
3791 }
3792 }
3793 },
3794 "leaf" : 1,
3795 "path" : "/config/ruledb/who/{ogroup}/ldap/{id}",
3796 "text" : "{id}"
3797 }
3798 ],
3799 "info" : {
3800 "POST" : {
3801 "description" : "Add 'LDAP Group' object.",
3802 "method" : "POST",
3803 "name" : "ldap",
3804 "parameters" : {
3805 "additionalProperties" : 0,
3806 "properties" : {
3807 "group" : {
3808 "description" : "LDAP Group DN",
3809 "maxLength" : 1024,
3810 "minLength" : 1,
3811 "optional" : 1,
3812 "type" : "string",
3813 "typetext" : "<string>"
3814 },
3815 "mode" : {
3816 "description" : "Operational mode. You can either match 'any' user, match when no such user exists with 'none', or match when the user is member of a specific group.",
3817 "enum" : [
3818 "any",
3819 "none",
3820 "group"
3821 ],
3822 "type" : "string"
3823 },
3824 "ogroup" : {
3825 "description" : "Object Groups ID.",
3826 "type" : "integer",
3827 "typetext" : "<integer>"
3828 },
3829 "profile" : {
3830 "description" : "Profile ID.",
3831 "format" : "pve-configid",
3832 "optional" : 1,
3833 "type" : "string",
3834 "typetext" : "<string>"
3835 }
3836 }
3837 },
3838 "protected" : 1,
3839 "proxyto" : "master",
3840 "returns" : {
3841 "description" : "The object ID.",
3842 "type" : "integer"
3843 }
3844 }
3845 },
3846 "leaf" : 0,
3847 "path" : "/config/ruledb/who/{ogroup}/ldap",
3848 "text" : "ldap"
3849 },
3850 {
3851 "children" : [
3852 {
3853 "info" : {
3854 "GET" : {
3855 "description" : "Read 'LDAP User' object settings.",
3856 "method" : "GET",
3857 "name" : "read_ldapuser",
3858 "parameters" : {
3859 "additionalProperties" : 0,
3860 "properties" : {
3861 "id" : {
3862 "description" : "Object ID.",
3863 "type" : "integer",
3864 "typetext" : "<integer>"
3865 },
3866 "ogroup" : {
3867 "description" : "Object Groups ID.",
3868 "type" : "integer",
3869 "typetext" : "<integer>"
3870 }
3871 }
3872 },
3873 "proxyto" : "master",
3874 "returns" : {
3875 "properties" : {
3876 "id" : {
3877 "type" : "integer"
3878 }
3879 },
3880 "type" : "object"
3881 }
3882 },
3883 "PUT" : {
3884 "description" : "Update 'LDAP User' object.",
3885 "method" : "PUT",
3886 "name" : "update_ldapuser",
3887 "parameters" : {
3888 "additionalProperties" : 0,
3889 "properties" : {
3890 "account" : {
3891 "description" : "LDAP user account name.",
3892 "maxLength" : 1024,
3893 "minLength" : 1,
3894 "type" : "string",
3895 "typetext" : "<string>"
3896 },
3897 "id" : {
3898 "description" : "Object ID.",
3899 "type" : "integer",
3900 "typetext" : "<integer>"
3901 },
3902 "ogroup" : {
3903 "description" : "Object Groups ID.",
3904 "type" : "integer",
3905 "typetext" : "<integer>"
3906 },
3907 "profile" : {
3908 "description" : "Profile ID.",
3909 "format" : "pve-configid",
3910 "type" : "string",
3911 "typetext" : "<string>"
3912 }
3913 }
3914 },
3915 "protected" : 1,
3916 "proxyto" : "master",
3917 "returns" : {
3918 "type" : "null"
3919 }
3920 }
3921 },
3922 "leaf" : 1,
3923 "path" : "/config/ruledb/who/{ogroup}/ldapuser/{id}",
3924 "text" : "{id}"
3925 }
3926 ],
3927 "info" : {
3928 "POST" : {
3929 "description" : "Add 'LDAP User' object.",
3930 "method" : "POST",
3931 "name" : "ldapuser",
3932 "parameters" : {
3933 "additionalProperties" : 0,
3934 "properties" : {
3935 "account" : {
3936 "description" : "LDAP user account name.",
3937 "maxLength" : 1024,
3938 "minLength" : 1,
3939 "type" : "string",
3940 "typetext" : "<string>"
3941 },
3942 "ogroup" : {
3943 "description" : "Object Groups ID.",
3944 "type" : "integer",
3945 "typetext" : "<integer>"
3946 },
3947 "profile" : {
3948 "description" : "Profile ID.",
3949 "format" : "pve-configid",
3950 "type" : "string",
3951 "typetext" : "<string>"
3952 }
3953 }
3954 },
3955 "protected" : 1,
3956 "proxyto" : "master",
3957 "returns" : {
3958 "description" : "The object ID.",
3959 "type" : "integer"
3960 }
3961 }
3962 },
3963 "leaf" : 0,
3964 "path" : "/config/ruledb/who/{ogroup}/ldapuser",
3965 "text" : "ldapuser"
3966 }
3967 ],
3968 "info" : {
3969 "DELETE" : {
3970 "description" : "Delete a 'who' group.",
3971 "method" : "DELETE",
3972 "name" : "delete_{$oclass}_group",
3973 "parameters" : {
3974 "additionalProperties" : 0,
3975 "properties" : {
3976 "ogroup" : {
3977 "description" : "Object Group ID.",
3978 "type" : "integer",
3979 "typetext" : "<integer>"
3980 }
3981 }
3982 },
732d76e1
DM
3983 "permissions" : {
3984 "check" : [
3985 "admin"
3986 ]
3987 },
9fda36b0
DM
3988 "protected" : 1,
3989 "proxyto" : "master",
3990 "returns" : {
3991 "type" : "null"
3992 }
3993 },
3994 "GET" : {
3995 "description" : "Directory index.",
3996 "method" : "GET",
3997 "name" : "index",
3998 "parameters" : {
3999 "additionalProperties" : 0,
4000 "properties" : {
4001 "ogroup" : {
4002 "description" : "Object Group ID.",
4003 "type" : "integer",
4004 "typetext" : "<integer>"
4005 }
4006 }
4007 },
732d76e1
DM
4008 "permissions" : {
4009 "check" : [
4010 "admin",
4011 "audit"
4012 ]
4013 },
9fda36b0
DM
4014 "returns" : {
4015 "items" : {
4016 "properties" : {
4017 "subdir" : {
4018 "type" : "string"
4019 }
4020 },
4021 "type" : "object"
4022 },
4023 "links" : [
4024 {
4025 "href" : "{subdir}",
4026 "rel" : "child"
4027 }
4028 ],
4029 "type" : "array"
4030 }
4031 }
4032 },
4033 "leaf" : 0,
4034 "path" : "/config/ruledb/who/{ogroup}",
4035 "text" : "{ogroup}"
4036 }
4037 ],
4038 "info" : {
4039 "GET" : {
4040 "description" : "Get list of 'who' groups.",
4041 "method" : "GET",
4042 "name" : "list_who_groups",
4043 "parameters" : {
4044 "additionalProperties" : 0
4045 },
732d76e1
DM
4046 "permissions" : {
4047 "check" : [
4048 "admin",
4049 "audit"
4050 ]
4051 },
9fda36b0
DM
4052 "proxyto" : "master",
4053 "returns" : {
4054 "items" : {
4055 "properties" : {
4056 "id" : {
4057 "type" : "integer"
4058 }
4059 },
4060 "type" : "object"
4061 },
4062 "type" : "array"
4063 }
4064 },
4065 "POST" : {
4066 "description" : "Create a new 'who' group.",
4067 "method" : "POST",
4068 "name" : "create_who_group",
4069 "parameters" : {
4070 "additionalProperties" : 0,
4071 "properties" : {
eff914dc
DM
4072 "info" : {
4073 "description" : "Informational comment.",
4074 "maxLength" : 255,
4075 "optional" : 1,
4076 "type" : "string",
4077 "typetext" : "<string>"
4078 },
4079 "name" : {
4080 "description" : "Group name.",
4081 "maxLength" : 255,
4082 "type" : "string",
4083 "typetext" : "<string>"
4084 }
4085 }
4086 },
732d76e1
DM
4087 "permissions" : {
4088 "check" : [
4089 "admin"
4090 ]
4091 },
eff914dc
DM
4092 "protected" : 1,
4093 "proxyto" : "master",
4094 "returns" : {
4095 "type" : "integer"
4096 }
410dc2c9
DM
4097 }
4098 },
eff914dc 4099 "leaf" : 0,
410dc2c9
DM
4100 "path" : "/config/ruledb/who",
4101 "text" : "who"
4102 }
4103 ],
4104 "info" : {
4105 "GET" : {
4106 "description" : "Directory index.",
4107 "method" : "GET",
4108 "name" : "index",
4109 "parameters" : {
4110 "additionalProperties" : 0
4111 },
732d76e1
DM
4112 "permissions" : {
4113 "check" : [
4114 "admin",
4115 "audit"
4116 ]
4117 },
410dc2c9
DM
4118 "returns" : {
4119 "items" : {
4120 "properties" : {},
4121 "type" : "object"
4122 },
4123 "links" : [
4124 {
4125 "href" : "{name}",
4126 "rel" : "child"
4127 }
4128 ],
4129 "type" : "array"
4130 }
d7cd791b
DM
4131 },
4132 "POST" : {
4133 "description" : "Reset PMG rule database back to factory defaults.",
4134 "method" : "POST",
4135 "name" : "reset_ruledb",
4136 "parameters" : {
4137 "additionalProperties" : 0
4138 },
4139 "protected" : 1,
4140 "returns" : {
4141 "type" : "null"
4142 }
410dc2c9
DM
4143 }
4144 },
4145 "leaf" : 0,
4146 "path" : "/config/ruledb",
4147 "text" : "ruledb"
4148 },
4149 {
4150 "children" : [
4151 {
eff914dc
DM
4152 "children" : [
4153 {
4154 "info" : {
4155 "DELETE" : {
4156 "description" : "Remove an object from the SMTP whitelist.",
4157 "method" : "DELETE",
4158 "name" : "delete_object",
4159 "parameters" : {
4160 "additionalProperties" : 0,
4161 "properties" : {
4162 "id" : {
4163 "description" : "Object ID.",
4164 "type" : "integer",
4165 "typetext" : "<integer>"
4166 }
4167 }
4168 },
732d76e1
DM
4169 "permissions" : {
4170 "check" : [
4171 "admin"
4172 ]
4173 },
bb6e6e0d 4174 "protected" : 1,
eff914dc
DM
4175 "proxyto" : "master",
4176 "returns" : {
4177 "type" : "null"
4178 }
4179 }
4180 },
4181 "leaf" : 1,
4182 "path" : "/config/whitelist/objects/{id}",
4183 "text" : "{id}"
4184 }
4185 ],
410dc2c9 4186 "info" : {
eff914dc
DM
4187 "GET" : {
4188 "description" : "Get list of all SMTP whitelist entries.",
4189 "method" : "GET",
4190 "name" : "objects",
4191 "parameters" : {
4192 "additionalProperties" : 0
4193 },
732d76e1
DM
4194 "permissions" : {
4195 "check" : [
4196 "admin",
4197 "audit"
4198 ]
4199 },
eff914dc
DM
4200 "proxyto" : "master",
4201 "returns" : {
4202 "items" : {
4203 "properties" : {
4204 "id" : {
4205 "type" : "integer"
4206 }
4207 },
4208 "type" : "object"
4209 },
4210 "links" : [
4211 {
4212 "href" : "{id}",
4213 "rel" : "child"
4214 }
4215 ],
4216 "type" : "array"
4217 }
4218 }
4219 },
4220 "leaf" : 0,
4221 "path" : "/config/whitelist/objects",
4222 "text" : "objects"
4223 },
4224 {
4225 "children" : [
4226 {
4227 "info" : {
4228 "GET" : {
4229 "description" : "Read 'Mail address' object settings.",
4230 "method" : "GET",
4231 "name" : "read_email",
4232 "parameters" : {
4233 "additionalProperties" : 0,
4234 "properties" : {
4235 "id" : {
4236 "description" : "Object ID.",
4237 "type" : "integer",
4238 "typetext" : "<integer>"
4239 }
4240 }
4241 },
4242 "proxyto" : "master",
4243 "returns" : {
4244 "properties" : {
4245 "id" : {
4246 "type" : "integer"
4247 }
4248 },
4249 "type" : "object"
4250 }
4251 },
4252 "PUT" : {
4253 "description" : "Update 'Mail address' object.",
4254 "method" : "PUT",
4255 "name" : "update_email",
4256 "parameters" : {
4257 "additionalProperties" : 0,
4258 "properties" : {
4259 "email" : {
4260 "description" : "Email address.",
4261 "format" : "email",
4262 "type" : "string",
4263 "typetext" : "<string>"
4264 },
4265 "id" : {
4266 "description" : "Object ID.",
4267 "type" : "integer",
4268 "typetext" : "<integer>"
4269 }
4270 }
4271 },
a55e94a6 4272 "protected" : 1,
eff914dc
DM
4273 "proxyto" : "master",
4274 "returns" : {
4275 "type" : "null"
4276 }
4277 }
4278 },
4279 "leaf" : 1,
4280 "path" : "/config/whitelist/email/{id}",
4281 "text" : "{id}"
4282 }
4283 ],
4284 "info" : {
4285 "POST" : {
4286 "description" : "Add 'Mail address' object.",
4287 "method" : "POST",
4288 "name" : "email",
410dc2c9
DM
4289 "parameters" : {
4290 "additionalProperties" : 0,
4291 "properties" : {
eff914dc
DM
4292 "email" : {
4293 "description" : "Email address.",
4294 "format" : "email",
410dc2c9
DM
4295 "type" : "string",
4296 "typetext" : "<string>"
4297 }
4298 }
4299 },
a55e94a6 4300 "protected" : 1,
410dc2c9
DM
4301 "proxyto" : "master",
4302 "returns" : {
eff914dc
DM
4303 "description" : "The object ID.",
4304 "type" : "integer"
410dc2c9 4305 }
eff914dc
DM
4306 }
4307 },
4308 "leaf" : 0,
4309 "path" : "/config/whitelist/email",
4310 "text" : "email"
4311 },
4312 {
4313 "children" : [
4314 {
4315 "info" : {
4316 "GET" : {
4317 "description" : "Read 'Mail address' object settings.",
4318 "method" : "GET",
4319 "name" : "read_receiver",
4320 "parameters" : {
4321 "additionalProperties" : 0,
4322 "properties" : {
4323 "id" : {
4324 "description" : "Object ID.",
4325 "type" : "integer",
4326 "typetext" : "<integer>"
4327 }
4328 }
4329 },
4330 "proxyto" : "master",
4331 "returns" : {
4332 "properties" : {
4333 "id" : {
4334 "type" : "integer"
4335 }
4336 },
4337 "type" : "object"
4338 }
4339 },
4340 "PUT" : {
4341 "description" : "Update 'Mail address' object.",
4342 "method" : "PUT",
4343 "name" : "update_receiver",
4344 "parameters" : {
4345 "additionalProperties" : 0,
4346 "properties" : {
4347 "email" : {
4348 "description" : "Email address.",
4349 "format" : "email",
4350 "type" : "string",
4351 "typetext" : "<string>"
4352 },
4353 "id" : {
4354 "description" : "Object ID.",
4355 "type" : "integer",
4356 "typetext" : "<integer>"
4357 }
4358 }
4359 },
a55e94a6 4360 "protected" : 1,
eff914dc
DM
4361 "proxyto" : "master",
4362 "returns" : {
4363 "type" : "null"
4364 }
4365 }
4366 },
4367 "leaf" : 1,
4368 "path" : "/config/whitelist/receiver/{id}",
4369 "text" : "{id}"
4370 }
4371 ],
4372 "info" : {
4373 "POST" : {
4374 "description" : "Add 'Mail address' object.",
4375 "method" : "POST",
4376 "name" : "receiver",
410dc2c9
DM
4377 "parameters" : {
4378 "additionalProperties" : 0,
4379 "properties" : {
eff914dc
DM
4380 "email" : {
4381 "description" : "Email address.",
4382 "format" : "email",
410dc2c9
DM
4383 "type" : "string",
4384 "typetext" : "<string>"
4385 }
4386 }
4387 },
a55e94a6 4388 "protected" : 1,
410dc2c9 4389 "proxyto" : "master",
eff914dc
DM
4390 "returns" : {
4391 "description" : "The object ID.",
4392 "type" : "integer"
4393 }
4394 }
4395 },
4396 "leaf" : 0,
4397 "path" : "/config/whitelist/receiver",
4398 "text" : "receiver"
4399 },
4400 {
4401 "children" : [
4402 {
4403 "info" : {
4404 "GET" : {
4405 "description" : "Read 'Domain' object settings.",
4406 "method" : "GET",
4407 "name" : "read_domain",
4408 "parameters" : {
4409 "additionalProperties" : 0,
4410 "properties" : {
4411 "id" : {
4412 "description" : "Object ID.",
4413 "type" : "integer",
4414 "typetext" : "<integer>"
4415 }
4416 }
4417 },
4418 "proxyto" : "master",
4419 "returns" : {
4420 "properties" : {
4421 "id" : {
4422 "type" : "integer"
4423 }
4424 },
4425 "type" : "object"
4426 }
4427 },
4428 "PUT" : {
4429 "description" : "Update 'Domain' object.",
4430 "method" : "PUT",
4431 "name" : "update_domain",
4432 "parameters" : {
4433 "additionalProperties" : 0,
4434 "properties" : {
4435 "domain" : {
4436 "description" : "DNS domain name (Sender).",
4437 "format" : "dns-name",
4438 "type" : "string",
4439 "typetext" : "<string>"
4440 },
4441 "id" : {
4442 "description" : "Object ID.",
4443 "type" : "integer",
4444 "typetext" : "<integer>"
4445 }
4446 }
4447 },
a55e94a6 4448 "protected" : 1,
eff914dc
DM
4449 "proxyto" : "master",
4450 "returns" : {
4451 "type" : "null"
4452 }
4453 }
4454 },
4455 "leaf" : 1,
4456 "path" : "/config/whitelist/domain/{id}",
4457 "text" : "{id}"
4458 }
4459 ],
4460 "info" : {
4461 "POST" : {
4462 "description" : "Add 'Domain' object.",
4463 "method" : "POST",
4464 "name" : "domain",
410dc2c9
DM
4465 "parameters" : {
4466 "additionalProperties" : 0,
4467 "properties" : {
eff914dc
DM
4468 "domain" : {
4469 "description" : "DNS domain name (Sender).",
4470 "format" : "dns-name",
410dc2c9
DM
4471 "type" : "string",
4472 "typetext" : "<string>"
eff914dc
DM
4473 }
4474 }
4475 },
a55e94a6 4476 "protected" : 1,
eff914dc
DM
4477 "proxyto" : "master",
4478 "returns" : {
4479 "description" : "The object ID.",
4480 "type" : "integer"
4481 }
4482 }
4483 },
4484 "leaf" : 0,
4485 "path" : "/config/whitelist/domain",
4486 "text" : "domain"
4487 },
4488 {
4489 "children" : [
4490 {
4491 "info" : {
4492 "GET" : {
4493 "description" : "Read 'Domain' object settings.",
4494 "method" : "GET",
4495 "name" : "read_receiver_domain",
4496 "parameters" : {
4497 "additionalProperties" : 0,
4498 "properties" : {
4499 "id" : {
4500 "description" : "Object ID.",
4501 "type" : "integer",
4502 "typetext" : "<integer>"
4503 }
4504 }
410dc2c9 4505 },
eff914dc
DM
4506 "proxyto" : "master",
4507 "returns" : {
4508 "properties" : {
4509 "id" : {
4510 "type" : "integer"
4511 }
4512 },
4513 "type" : "object"
4514 }
4515 },
4516 "PUT" : {
4517 "description" : "Update 'Domain' object.",
4518 "method" : "PUT",
4519 "name" : "update_receiver_domain",
4520 "parameters" : {
4521 "additionalProperties" : 0,
4522 "properties" : {
4523 "domain" : {
4524 "description" : "DNS domain name (Sender).",
4525 "format" : "dns-name",
4526 "type" : "string",
4527 "typetext" : "<string>"
4528 },
4529 "id" : {
4530 "description" : "Object ID.",
4531 "type" : "integer",
4532 "typetext" : "<integer>"
4533 }
4534 }
410dc2c9 4535 },
a55e94a6 4536 "protected" : 1,
eff914dc
DM
4537 "proxyto" : "master",
4538 "returns" : {
4539 "type" : "null"
4540 }
4541 }
4542 },
4543 "leaf" : 1,
4544 "path" : "/config/whitelist/receiver_domain/{id}",
4545 "text" : "{id}"
4546 }
4547 ],
4548 "info" : {
4549 "POST" : {
4550 "description" : "Add 'Domain' object.",
4551 "method" : "POST",
4552 "name" : "receiver_domain",
4553 "parameters" : {
4554 "additionalProperties" : 0,
4555 "properties" : {
4556 "domain" : {
4557 "description" : "DNS domain name (Sender).",
4558 "format" : "dns-name",
410dc2c9
DM
4559 "type" : "string",
4560 "typetext" : "<string>"
eff914dc
DM
4561 }
4562 }
4563 },
a55e94a6 4564 "protected" : 1,
eff914dc
DM
4565 "proxyto" : "master",
4566 "returns" : {
4567 "description" : "The object ID.",
4568 "type" : "integer"
4569 }
4570 }
4571 },
4572 "leaf" : 0,
4573 "path" : "/config/whitelist/receiver_domain",
4574 "text" : "receiver_domain"
4575 },
4576 {
4577 "children" : [
4578 {
4579 "info" : {
4580 "GET" : {
4581 "description" : "Read 'Regular Expression' object settings.",
4582 "method" : "GET",
4583 "name" : "read_regex",
4584 "parameters" : {
4585 "additionalProperties" : 0,
4586 "properties" : {
4587 "id" : {
4588 "description" : "Object ID.",
4589 "type" : "integer",
4590 "typetext" : "<integer>"
4591 }
4592 }
410dc2c9 4593 },
eff914dc
DM
4594 "proxyto" : "master",
4595 "returns" : {
4596 "properties" : {
4597 "id" : {
4598 "type" : "integer"
4599 }
4600 },
4601 "type" : "object"
4602 }
4603 },
4604 "PUT" : {
4605 "description" : "Update 'Regular Expression' object.",
4606 "method" : "PUT",
4607 "name" : "update_regex",
4608 "parameters" : {
4609 "additionalProperties" : 0,
4610 "properties" : {
4611 "id" : {
4612 "description" : "Object ID.",
4613 "type" : "integer",
4614 "typetext" : "<integer>"
4615 },
4616 "regex" : {
4617 "description" : "Email address regular expression.",
4618 "maxLength" : 1024,
4619 "type" : "string",
4620 "typetext" : "<string>"
4621 }
4622 }
4623 },
a55e94a6 4624 "protected" : 1,
eff914dc
DM
4625 "proxyto" : "master",
4626 "returns" : {
4627 "type" : "null"
4628 }
4629 }
4630 },
4631 "leaf" : 1,
4632 "path" : "/config/whitelist/regex/{id}",
4633 "text" : "{id}"
4634 }
4635 ],
4636 "info" : {
4637 "POST" : {
4638 "description" : "Add 'Regular Expression' object.",
4639 "method" : "POST",
4640 "name" : "regex",
4641 "parameters" : {
4642 "additionalProperties" : 0,
4643 "properties" : {
4644 "regex" : {
4645 "description" : "Email address regular expression.",
4646 "maxLength" : 1024,
410dc2c9
DM
4647 "type" : "string",
4648 "typetext" : "<string>"
eff914dc
DM
4649 }
4650 }
4651 },
a55e94a6 4652 "protected" : 1,
eff914dc
DM
4653 "proxyto" : "master",
4654 "returns" : {
4655 "description" : "The object ID.",
4656 "type" : "integer"
4657 }
4658 }
4659 },
4660 "leaf" : 0,
4661 "path" : "/config/whitelist/regex",
4662 "text" : "regex"
4663 },
4664 {
4665 "children" : [
4666 {
4667 "info" : {
4668 "GET" : {
4669 "description" : "Read 'Regular Expression' object settings.",
4670 "method" : "GET",
4671 "name" : "read_receiver_regex",
4672 "parameters" : {
4673 "additionalProperties" : 0,
4674 "properties" : {
4675 "id" : {
4676 "description" : "Object ID.",
4677 "type" : "integer",
4678 "typetext" : "<integer>"
4679 }
4680 }
4681 },
4682 "proxyto" : "master",
4683 "returns" : {
4684 "properties" : {
4685 "id" : {
4686 "type" : "integer"
4687 }
4688 },
4689 "type" : "object"
4690 }
4691 },
4692 "PUT" : {
4693 "description" : "Update 'Regular Expression' object.",
4694 "method" : "PUT",
4695 "name" : "update_receiver_regex",
4696 "parameters" : {
4697 "additionalProperties" : 0,
4698 "properties" : {
4699 "id" : {
4700 "description" : "Object ID.",
4701 "type" : "integer",
4702 "typetext" : "<integer>"
4703 },
4704 "regex" : {
4705 "description" : "Email address regular expression.",
4706 "maxLength" : 1024,
4707 "type" : "string",
4708 "typetext" : "<string>"
4709 }
4710 }
4711 },
a55e94a6 4712 "protected" : 1,
eff914dc
DM
4713 "proxyto" : "master",
4714 "returns" : {
4715 "type" : "null"
4716 }
4717 }
4718 },
4719 "leaf" : 1,
4720 "path" : "/config/whitelist/receiver_regex/{id}",
4721 "text" : "{id}"
4722 }
4723 ],
4724 "info" : {
4725 "POST" : {
4726 "description" : "Add 'Regular Expression' object.",
4727 "method" : "POST",
4728 "name" : "receiver_regex",
4729 "parameters" : {
4730 "additionalProperties" : 0,
4731 "properties" : {
4732 "regex" : {
4733 "description" : "Email address regular expression.",
4734 "maxLength" : 1024,
4735 "type" : "string",
4736 "typetext" : "<string>"
4737 }
4738 }
4739 },
a55e94a6 4740 "protected" : 1,
eff914dc
DM
4741 "proxyto" : "master",
4742 "returns" : {
4743 "description" : "The object ID.",
4744 "type" : "integer"
4745 }
4746 }
4747 },
4748 "leaf" : 0,
4749 "path" : "/config/whitelist/receiver_regex",
4750 "text" : "receiver_regex"
4751 },
4752 {
4753 "children" : [
4754 {
4755 "info" : {
4756 "GET" : {
4757 "description" : "Read 'IP Address' object settings.",
4758 "method" : "GET",
4759 "name" : "read_ip",
4760 "parameters" : {
4761 "additionalProperties" : 0,
4762 "properties" : {
4763 "id" : {
4764 "description" : "Object ID.",
4765 "type" : "integer",
4766 "typetext" : "<integer>"
4767 }
4768 }
4769 },
4770 "proxyto" : "master",
4771 "returns" : {
4772 "properties" : {
4773 "id" : {
4774 "type" : "integer"
4775 }
4776 },
4777 "type" : "object"
4778 }
4779 },
4780 "PUT" : {
4781 "description" : "Update 'IP Address' object.",
4782 "method" : "PUT",
4783 "name" : "update_ip",
4784 "parameters" : {
4785 "additionalProperties" : 0,
4786 "properties" : {
4787 "id" : {
4788 "description" : "Object ID.",
4789 "type" : "integer",
4790 "typetext" : "<integer>"
4791 },
4792 "ip" : {
4793 "description" : "IP address",
4794 "format" : "ip",
4795 "type" : "string",
4796 "typetext" : "<string>"
4797 }
4798 }
4799 },
a55e94a6 4800 "protected" : 1,
eff914dc
DM
4801 "proxyto" : "master",
4802 "returns" : {
4803 "type" : "null"
4804 }
4805 }
4806 },
4807 "leaf" : 1,
4808 "path" : "/config/whitelist/ip/{id}",
4809 "text" : "{id}"
4810 }
4811 ],
4812 "info" : {
4813 "POST" : {
4814 "description" : "Add 'IP Address' object.",
4815 "method" : "POST",
4816 "name" : "ip",
4817 "parameters" : {
4818 "additionalProperties" : 0,
4819 "properties" : {
4820 "ip" : {
4821 "description" : "IP address",
4822 "format" : "ip",
4823 "type" : "string",
4824 "typetext" : "<string>"
4825 }
4826 }
4827 },
a55e94a6 4828 "protected" : 1,
eff914dc
DM
4829 "proxyto" : "master",
4830 "returns" : {
4831 "description" : "The object ID.",
4832 "type" : "integer"
4833 }
4834 }
4835 },
4836 "leaf" : 0,
4837 "path" : "/config/whitelist/ip",
4838 "text" : "ip"
4839 },
4840 {
4841 "children" : [
4842 {
4843 "info" : {
4844 "GET" : {
4845 "description" : "Read 'IP Network' object settings.",
4846 "method" : "GET",
4847 "name" : "read_network",
4848 "parameters" : {
4849 "additionalProperties" : 0,
4850 "properties" : {
4851 "id" : {
4852 "description" : "Object ID.",
4853 "type" : "integer",
4854 "typetext" : "<integer>"
4855 }
4856 }
4857 },
4858 "proxyto" : "master",
4859 "returns" : {
4860 "properties" : {
4861 "id" : {
4862 "type" : "integer"
4863 }
4864 },
4865 "type" : "object"
4866 }
4867 },
4868 "PUT" : {
4869 "description" : "Update 'IP Network' object.",
4870 "method" : "PUT",
4871 "name" : "update_network",
4872 "parameters" : {
4873 "additionalProperties" : 0,
4874 "properties" : {
4875 "cidr" : {
4876 "description" : "Network address in CIDR notation.",
4877 "format" : "CIDR",
4878 "type" : "string",
4879 "typetext" : "<string>"
4880 },
4881 "id" : {
4882 "description" : "Object ID.",
4883 "type" : "integer",
4884 "typetext" : "<integer>"
4885 }
4886 }
4887 },
a55e94a6 4888 "protected" : 1,
eff914dc
DM
4889 "proxyto" : "master",
4890 "returns" : {
4891 "type" : "null"
4892 }
4893 }
4894 },
4895 "leaf" : 1,
4896 "path" : "/config/whitelist/network/{id}",
4897 "text" : "{id}"
4898 }
4899 ],
4900 "info" : {
4901 "POST" : {
4902 "description" : "Add 'IP Network' object.",
4903 "method" : "POST",
4904 "name" : "network",
4905 "parameters" : {
4906 "additionalProperties" : 0,
4907 "properties" : {
4908 "cidr" : {
4909 "description" : "Network address in CIDR notation.",
4910 "format" : "CIDR",
4911 "type" : "string",
4912 "typetext" : "<string>"
4913 }
4914 }
4915 },
a55e94a6 4916 "protected" : 1,
eff914dc
DM
4917 "proxyto" : "master",
4918 "returns" : {
4919 "description" : "The object ID.",
4920 "type" : "integer"
4921 }
4922 }
4923 },
4924 "leaf" : 0,
4925 "path" : "/config/whitelist/network",
4926 "text" : "network"
4927 }
4928 ],
4929 "info" : {
4930 "GET" : {
4931 "description" : "Directory index.",
4932 "method" : "GET",
4933 "name" : "index",
4934 "parameters" : {
4935 "additionalProperties" : 0
4936 },
732d76e1
DM
4937 "permissions" : {
4938 "check" : [
4939 "admin",
4940 "audit"
4941 ]
4942 },
eff914dc
DM
4943 "returns" : {
4944 "items" : {
4945 "properties" : {
4946 "subdir" : {
4947 "type" : "string"
4948 }
4949 },
4950 "type" : "object"
4951 },
4952 "links" : [
4953 {
4954 "href" : "{subdir}",
4955 "rel" : "child"
4956 }
4957 ],
4958 "type" : "array"
4959 }
4960 }
4961 },
4962 "leaf" : 0,
4963 "path" : "/config/whitelist",
4964 "text" : "whitelist"
4965 },
4966 {
4967 "children" : [
4968 {
a55e94a6
DM
4969 "children" : [
4970 {
4971 "info" : {
4972 "GET" : {
4973 "description" : "Get LDAP profile configuration.",
4974 "method" : "GET",
4975 "name" : "read_config",
4976 "parameters" : {
4977 "additionalProperties" : 0,
4978 "properties" : {
4979 "profile" : {
4980 "description" : "Profile ID.",
4981 "format" : "pve-configid",
4982 "type" : "string",
4983 "typetext" : "<string>"
4984 }
4985 }
4986 },
4987 "permissions" : {
4988 "check" : [
4989 "admin"
4990 ]
4991 },
4992 "proxyto" : "master",
4993 "returns" : {}
4994 },
4995 "PUT" : {
4996 "description" : "Update LDAP profile settings.",
4997 "method" : "PUT",
4998 "name" : "update_config",
4999 "parameters" : {
5000 "additionalProperties" : 0,
5001 "properties" : {
5002 "accountattr" : {
732d76e1 5003 "default" : "sAMAccountName, uid",
a55e94a6 5004 "description" : "Account attribute name name.",
274b47fc 5005 "format" : "ldap-simple-attr-list",
a55e94a6 5006 "optional" : 1,
274b47fc
DM
5007 "type" : "string",
5008 "typetext" : "<string>"
a55e94a6
DM
5009 },
5010 "basedn" : {
5011 "description" : "Base domain name.",
5012 "optional" : 1,
5013 "type" : "string",
5014 "typetext" : "<string>"
5015 },
5016 "binddn" : {
5017 "description" : "Bind domain name.",
5018 "optional" : 1,
5019 "type" : "string",
5020 "typetext" : "<string>"
5021 },
5022 "bindpw" : {
5023 "description" : "Bind password.",
5024 "optional" : 1,
5025 "type" : "string",
5026 "typetext" : "<string>"
5027 },
5028 "comment" : {
5029 "description" : "Description.",
5030 "maxLength" : 4096,
5031 "optional" : 1,
5032 "type" : "string",
5033 "typetext" : "<string>"
5034 },
5035 "delete" : {
5036 "description" : "A list of settings you want to delete.",
5037 "format" : "pve-configid-list",
5038 "maxLength" : 4096,
5039 "optional" : 1,
5040 "type" : "string",
5041 "typetext" : "<string>"
5042 },
5043 "digest" : {
5044 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
5045 "maxLength" : 40,
5046 "optional" : 1,
5047 "type" : "string",
5048 "typetext" : "<string>"
5049 },
5050 "disable" : {
5051 "description" : "Flag to disable/deactivate the entry.",
5052 "optional" : 1,
5053 "type" : "boolean",
5054 "typetext" : "<boolean>"
5055 },
5056 "filter" : {
5057 "description" : "LDAP filter.",
5058 "optional" : 1,
5059 "type" : "string",
5060 "typetext" : "<string>"
5061 },
5062 "groupbasedn" : {
5063 "description" : "Base domain name for groups.",
5064 "optional" : 1,
5065 "type" : "string",
5066 "typetext" : "<string>"
5067 },
732d76e1
DM
5068 "groupclass" : {
5069 "default" : "group, univentionGroup, ipausergroup",
5070 "description" : "List of objectclasses for groups.",
274b47fc 5071 "format" : "ldap-simple-attr-list",
732d76e1
DM
5072 "optional" : 1,
5073 "type" : "string",
5074 "typetext" : "<string>"
5075 },
a55e94a6 5076 "mailattr" : {
274b47fc 5077 "default" : "mail, userPrincipalName, proxyAddresses, othermailbox, mailAlternativeAddress",
a55e94a6 5078 "description" : "List of mail attribute names.",
274b47fc 5079 "format" : "ldap-simple-attr-list",
a55e94a6 5080 "optional" : 1,
274b47fc
DM
5081 "type" : "string",
5082 "typetext" : "<string>"
a55e94a6
DM
5083 },
5084 "mode" : {
5085 "default" : "ldap",
5086 "description" : "LDAP protocol mode ('ldap' or 'ldaps').",
5087 "enum" : [
5088 "ldap",
5089 "ldaps"
5090 ],
5091 "optional" : 1,
5092 "type" : "string"
5093 },
5094 "port" : {
5095 "description" : "Specify the port to connect to.",
5096 "maximum" : 65535,
5097 "minimum" : 1,
5098 "optional" : 1,
5099 "type" : "integer",
5100 "typetext" : "<integer> (1 - 65535)"
5101 },
5102 "profile" : {
5103 "description" : "Profile ID.",
5104 "format" : "pve-configid",
5105 "type" : "string",
5106 "typetext" : "<string>"
5107 },
5108 "server1" : {
5109 "description" : "Server address.",
5110 "format" : "address",
5111 "maxLength" : 256,
5112 "optional" : 1,
5113 "type" : "string",
5114 "typetext" : "<string>"
5115 },
5116 "server2" : {
5117 "description" : "Fallback server address. Userd when the first server is not available.",
5118 "format" : "address",
5119 "maxLength" : 256,
5120 "optional" : 1,
5121 "type" : "string",
5122 "typetext" : "<string>"
5123 }
732d76e1
DM
5124 },
5125 "type" : "object"
5126 },
5127 "permissions" : {
5128 "check" : [
5129 "admin"
5130 ]
5131 },
5132 "protected" : 1,
5133 "proxyto" : "master",
5134 "returns" : {
5135 "type" : "null"
5136 }
5137 }
5138 },
5139 "leaf" : 1,
5140 "path" : "/config/ldap/{profile}/config",
5141 "text" : "config"
5142 },
5143 {
5144 "info" : {
5145 "POST" : {
5146 "description" : "Synchronice LDAP users to local database.",
5147 "method" : "POST",
5148 "name" : "sync_profile",
5149 "parameters" : {
5150 "additionalProperties" : 0,
5151 "properties" : {
5152 "profile" : {
5153 "description" : "Profile ID.",
5154 "format" : "pve-configid",
5155 "type" : "string",
5156 "typetext" : "<string>"
5157 }
5158 }
5159 },
5160 "permissions" : {
5161 "check" : [
5162 "admin"
5163 ]
5164 },
5165 "protected" : 1,
5166 "proxyto" : "master",
5167 "returns" : {
5168 "type" : "null"
5169 }
5170 }
5171 },
5172 "leaf" : 1,
5173 "path" : "/config/ldap/{profile}/sync",
5174 "text" : "sync"
5175 },
5176 {
5177 "children" : [
5178 {
5179 "info" : {
5180 "GET" : {
5181 "description" : "Get all email addresses for the specified user.",
5182 "method" : "GET",
5183 "name" : "address_list",
5184 "parameters" : {
5185 "additionalProperties" : 0,
5186 "properties" : {
5187 "email" : {
5188 "description" : "Email address.",
5189 "format" : "email",
5190 "type" : "string",
5191 "typetext" : "<string>"
5192 },
5193 "profile" : {
5194 "description" : "Profile ID.",
5195 "format" : "pve-configid",
5196 "type" : "string",
5197 "typetext" : "<string>"
5198 }
5199 }
5200 },
5201 "permissions" : {
5202 "check" : [
5203 "admin"
5204 ]
5205 },
5206 "protected" : 1,
5207 "proxyto" : "master",
5208 "returns" : {
5209 "items" : {
5210 "properties" : {
5211 "email" : {
5212 "type" : "string"
5213 },
5214 "primary" : {
5215 "type" : "boolean"
5216 }
5217 },
5218 "type" : "object"
5219 },
5220 "type" : "array"
5221 }
5222 }
a55e94a6 5223 },
732d76e1
DM
5224 "leaf" : 1,
5225 "path" : "/config/ldap/{profile}/users/{email}",
5226 "text" : "{email}"
a55e94a6 5227 }
732d76e1 5228 ],
a55e94a6 5229 "info" : {
732d76e1
DM
5230 "GET" : {
5231 "description" : "List LDAP users.",
5232 "method" : "GET",
5233 "name" : "profile_list_users",
a55e94a6
DM
5234 "parameters" : {
5235 "additionalProperties" : 0,
5236 "properties" : {
5237 "profile" : {
5238 "description" : "Profile ID.",
5239 "format" : "pve-configid",
5240 "type" : "string",
5241 "typetext" : "<string>"
5242 }
5243 }
5244 },
5245 "permissions" : {
5246 "check" : [
5247 "admin"
5248 ]
5249 },
5250 "protected" : 1,
5251 "proxyto" : "master",
5252 "returns" : {
732d76e1
DM
5253 "items" : {
5254 "properties" : {
5255 "account" : {
5256 "type" : "string"
5257 },
5258 "dn" : {
5259 "type" : "string"
5260 },
5261 "pmail" : {
5262 "type" : "string"
5263 }
5264 },
5265 "type" : "object"
5266 },
5267 "links" : [
5268 {
5269 "href" : "{pmail}",
5270 "rel" : "child"
5271 }
5272 ],
5273 "type" : "array"
a55e94a6
DM
5274 }
5275 }
5276 },
732d76e1
DM
5277 "leaf" : 0,
5278 "path" : "/config/ldap/{profile}/users",
5279 "text" : "users"
a55e94a6
DM
5280 },
5281 {
5282 "children" : [
5283 {
5284 "info" : {
5285 "GET" : {
732d76e1 5286 "description" : "List LDAP group members.",
a55e94a6 5287 "method" : "GET",
732d76e1 5288 "name" : "profile_list_group_members",
a55e94a6
DM
5289 "parameters" : {
5290 "additionalProperties" : 0,
5291 "properties" : {
732d76e1
DM
5292 "gid" : {
5293 "description" : "Group ID",
5294 "type" : "number",
5295 "typetext" : "<number>"
a55e94a6
DM
5296 },
5297 "profile" : {
5298 "description" : "Profile ID.",
5299 "format" : "pve-configid",
5300 "type" : "string",
5301 "typetext" : "<string>"
5302 }
5303 }
5304 },
5305 "permissions" : {
5306 "check" : [
5307 "admin"
5308 ]
5309 },
5310 "protected" : 1,
5311 "proxyto" : "master",
5312 "returns" : {
5313 "items" : {
5314 "properties" : {
732d76e1 5315 "account" : {
a55e94a6
DM
5316 "type" : "string"
5317 },
732d76e1
DM
5318 "dn" : {
5319 "type" : "string"
5320 },
5321 "pmail" : {
5322 "type" : "string"
a55e94a6
DM
5323 }
5324 },
5325 "type" : "object"
5326 },
5327 "type" : "array"
5328 }
5329 }
5330 },
5331 "leaf" : 1,
732d76e1
DM
5332 "path" : "/config/ldap/{profile}/groups/{gid}",
5333 "text" : "{gid}"
a55e94a6
DM
5334 }
5335 ],
5336 "info" : {
5337 "GET" : {
732d76e1 5338 "description" : "List LDAP groups.",
a55e94a6 5339 "method" : "GET",
732d76e1 5340 "name" : "profile_list_groups",
a55e94a6
DM
5341 "parameters" : {
5342 "additionalProperties" : 0,
5343 "properties" : {
5344 "profile" : {
5345 "description" : "Profile ID.",
5346 "format" : "pve-configid",
5347 "type" : "string",
5348 "typetext" : "<string>"
5349 }
5350 }
5351 },
5352 "permissions" : {
5353 "check" : [
5354 "admin"
5355 ]
5356 },
5357 "protected" : 1,
5358 "proxyto" : "master",
5359 "returns" : {
5360 "items" : {
5361 "properties" : {
a55e94a6
DM
5362 "dn" : {
5363 "type" : "string"
5364 },
732d76e1
DM
5365 "gid" : {
5366 "type" : "number"
a55e94a6
DM
5367 }
5368 },
5369 "type" : "object"
5370 },
732d76e1
DM
5371 "links" : [
5372 {
5373 "href" : "{gid}",
5374 "rel" : "child"
5375 }
5376 ],
a55e94a6
DM
5377 "type" : "array"
5378 }
5379 }
5380 },
732d76e1
DM
5381 "leaf" : 0,
5382 "path" : "/config/ldap/{profile}/groups",
5383 "text" : "groups"
5384 }
5385 ],
5386 "info" : {
5387 "DELETE" : {
5388 "description" : "Delete an LDAP profile",
5389 "method" : "DELETE",
5390 "name" : "delete",
5391 "parameters" : {
5392 "additionalProperties" : 0,
5393 "properties" : {
5394 "profile" : {
5395 "description" : "Profile ID.",
5396 "format" : "pve-configid",
5397 "type" : "string",
5398 "typetext" : "<string>"
5399 }
5400 }
5401 },
5402 "permissions" : {
5403 "check" : [
5404 "admin"
5405 ]
5406 },
5407 "protected" : 1,
5408 "proxyto" : "master",
5409 "returns" : {
5410 "type" : "null"
5411 }
5412 },
5413 "GET" : {
5414 "description" : "Directory index",
5415 "method" : "GET",
5416 "name" : "profile_index",
5417 "parameters" : {
5418 "additionalProperties" : 0,
5419 "properties" : {
5420 "profile" : {
5421 "description" : "Profile ID.",
5422 "format" : "pve-configid",
5423 "type" : "string",
5424 "typetext" : "<string>"
5425 }
5426 }
5427 },
5428 "permissions" : {
5429 "user" : "all"
5430 },
5431 "returns" : {
5432 "items" : {
5433 "properties" : {
5434 "subdir" : {
5435 "type" : "string"
5436 }
5437 },
5438 "type" : "object"
5439 },
5440 "links" : [
5441 {
5442 "href" : "{subdir}",
5443 "rel" : "child"
5444 }
5445 ],
5446 "type" : "array"
5447 }
5448 }
5449 },
5450 "leaf" : 0,
5451 "path" : "/config/ldap/{profile}",
5452 "text" : "{profile}"
5453 }
5454 ],
5455 "info" : {
5456 "GET" : {
5457 "description" : "List configured LDAP profiles.",
5458 "method" : "GET",
5459 "name" : "index",
5460 "parameters" : {
5461 "additionalProperties" : 0
5462 },
5463 "permissions" : {
5464 "check" : [
5465 "admin"
5466 ]
5467 },
5468 "proxyto" : "master",
5469 "returns" : {
5470 "items" : {
5471 "properties" : {
5472 "comment" : {
5473 "optional" : 1,
5474 "type" : "string"
5475 },
5476 "disable" : {
5477 "type" : "boolean"
5478 },
5479 "gcount" : {
5480 "optional" : 1,
5481 "type" : "integer"
5482 },
5483 "mcount" : {
5484 "optional" : 1,
5485 "type" : "integer"
5486 },
5487 "mode" : {
5488 "type" : "string"
5489 },
5490 "profile" : {
5491 "type" : "string"
5492 },
5493 "server1" : {
5494 "type" : "string"
5495 },
5496 "server2" : {
5497 "optional" : 1,
5498 "type" : "string"
5499 },
5500 "ucount" : {
5501 "optional" : 1,
5502 "type" : "integer"
5503 }
5504 },
5505 "type" : "object"
5506 },
5507 "links" : [
5508 {
5509 "href" : "{profile}",
5510 "rel" : "child"
5511 }
5512 ],
5513 "type" : "array"
5514 }
5515 },
5516 "POST" : {
5517 "description" : "Add LDAP profile.",
5518 "method" : "POST",
5519 "name" : "create",
5520 "parameters" : {
5521 "additionalProperties" : 0,
5522 "properties" : {
5523 "accountattr" : {
5524 "default" : "sAMAccountName, uid",
5525 "description" : "Account attribute name name.",
274b47fc 5526 "format" : "ldap-simple-attr-list",
732d76e1 5527 "optional" : 1,
274b47fc
DM
5528 "type" : "string",
5529 "typetext" : "<string>"
732d76e1
DM
5530 },
5531 "basedn" : {
5532 "description" : "Base domain name.",
5533 "optional" : 1,
5534 "type" : "string",
5535 "typetext" : "<string>"
5536 },
5537 "binddn" : {
5538 "description" : "Bind domain name.",
5539 "optional" : 1,
5540 "type" : "string",
5541 "typetext" : "<string>"
5542 },
5543 "bindpw" : {
5544 "description" : "Bind password.",
5545 "optional" : 1,
5546 "type" : "string",
5547 "typetext" : "<string>"
5548 },
5549 "comment" : {
5550 "description" : "Description.",
5551 "maxLength" : 4096,
5552 "optional" : 1,
5553 "type" : "string",
5554 "typetext" : "<string>"
5555 },
5556 "disable" : {
5557 "description" : "Flag to disable/deactivate the entry.",
5558 "optional" : 1,
5559 "type" : "boolean",
5560 "typetext" : "<boolean>"
a55e94a6 5561 },
732d76e1
DM
5562 "filter" : {
5563 "description" : "LDAP filter.",
5564 "optional" : 1,
5565 "type" : "string",
5566 "typetext" : "<string>"
5567 },
5568 "groupbasedn" : {
5569 "description" : "Base domain name for groups.",
5570 "optional" : 1,
5571 "type" : "string",
5572 "typetext" : "<string>"
5573 },
5574 "groupclass" : {
5575 "default" : "group, univentionGroup, ipausergroup",
5576 "description" : "List of objectclasses for groups.",
274b47fc 5577 "format" : "ldap-simple-attr-list",
732d76e1
DM
5578 "optional" : 1,
5579 "type" : "string",
5580 "typetext" : "<string>"
5581 },
5582 "mailattr" : {
274b47fc 5583 "default" : "mail, userPrincipalName, proxyAddresses, othermailbox, mailAlternativeAddress",
732d76e1 5584 "description" : "List of mail attribute names.",
274b47fc 5585 "format" : "ldap-simple-attr-list",
732d76e1 5586 "optional" : 1,
274b47fc
DM
5587 "type" : "string",
5588 "typetext" : "<string>"
732d76e1
DM
5589 },
5590 "mode" : {
5591 "default" : "ldap",
5592 "description" : "LDAP protocol mode ('ldap' or 'ldaps').",
5593 "enum" : [
5594 "ldap",
5595 "ldaps"
5596 ],
5597 "optional" : 1,
5598 "type" : "string"
5599 },
5600 "port" : {
5601 "description" : "Specify the port to connect to.",
5602 "maximum" : 65535,
5603 "minimum" : 1,
5604 "optional" : 1,
5605 "type" : "integer",
5606 "typetext" : "<integer> (1 - 65535)"
5607 },
5608 "profile" : {
5609 "description" : "Profile ID.",
5610 "format" : "pve-configid",
5611 "type" : "string",
5612 "typetext" : "<string>"
5613 },
5614 "server1" : {
5615 "description" : "Server address.",
5616 "format" : "address",
5617 "maxLength" : 256,
5618 "optional" : 0,
5619 "type" : "string",
5620 "typetext" : "<string>"
5621 },
5622 "server2" : {
5623 "description" : "Fallback server address. Userd when the first server is not available.",
5624 "format" : "address",
5625 "maxLength" : 256,
5626 "optional" : 1,
5627 "type" : "string",
5628 "typetext" : "<string>"
5629 }
5630 },
5631 "type" : "object"
5632 },
5633 "permissions" : {
5634 "check" : [
5635 "admin"
5636 ]
5637 },
5638 "protected" : 1,
5639 "proxyto" : "master",
5640 "returns" : {
5641 "type" : "null"
5642 }
5643 }
5644 },
5645 "leaf" : 0,
5646 "path" : "/config/ldap",
5647 "text" : "ldap"
5648 },
5649 {
5650 "children" : [
5651 {
a55e94a6
DM
5652 "info" : {
5653 "DELETE" : {
732d76e1 5654 "description" : "Delete a relay domain",
a55e94a6
DM
5655 "method" : "DELETE",
5656 "name" : "delete",
5657 "parameters" : {
5658 "additionalProperties" : 0,
5659 "properties" : {
732d76e1
DM
5660 "domain" : {
5661 "description" : "Domain name.",
5662 "format" : "dns-name",
eff914dc
DM
5663 "type" : "string",
5664 "typetext" : "<string>"
5665 }
5666 }
5667 },
a55e94a6
DM
5668 "permissions" : {
5669 "check" : [
5670 "admin"
5671 ]
5672 },
eff914dc
DM
5673 "protected" : 1,
5674 "proxyto" : "master",
a55e94a6
DM
5675 "returns" : {
5676 "type" : "null"
5677 }
eff914dc 5678 },
a55e94a6 5679 "GET" : {
732d76e1 5680 "description" : "Read Domain data (comment).",
a55e94a6 5681 "method" : "GET",
732d76e1 5682 "name" : "read",
eff914dc
DM
5683 "parameters" : {
5684 "additionalProperties" : 0,
5685 "properties" : {
732d76e1
DM
5686 "domain" : {
5687 "description" : "Domain name.",
5688 "format" : "dns-name",
eff914dc
DM
5689 "type" : "string",
5690 "typetext" : "<string>"
a55e94a6
DM
5691 }
5692 }
5693 },
5694 "permissions" : {
732d76e1
DM
5695 "check" : [
5696 "admin",
5697 "audit"
5698 ]
a55e94a6 5699 },
732d76e1 5700 "proxyto" : "master",
a55e94a6 5701 "returns" : {
732d76e1
DM
5702 "properties" : {
5703 "comment" : {
5704 "type" : "string"
eff914dc 5705 },
732d76e1
DM
5706 "domain" : {
5707 "type" : "string"
5708 }
eff914dc 5709 },
732d76e1
DM
5710 "type" : "object"
5711 }
5712 },
5713 "PUT" : {
5714 "description" : "Update relay domain data (comment).",
5715 "method" : "PUT",
5716 "name" : "write",
5717 "parameters" : {
5718 "additionalProperties" : 0,
5719 "properties" : {
5720 "comment" : {
5721 "description" : "Comment.",
5722 "type" : "string",
5723 "typetext" : "<string>"
5724 },
5725 "domain" : {
5726 "description" : "Domain name.",
5727 "format" : "dns-name",
5728 "type" : "string",
5729 "typetext" : "<string>"
a55e94a6 5730 }
732d76e1
DM
5731 }
5732 },
5733 "permissions" : {
5734 "check" : [
5735 "admin"
5736 ]
5737 },
5738 "protected" : 1,
5739 "proxyto" : "master",
5740 "returns" : {
5741 "type" : "null"
eff914dc
DM
5742 }
5743 }
5744 },
732d76e1
DM
5745 "leaf" : 1,
5746 "path" : "/config/domains/{domain}",
5747 "text" : "{domain}"
eff914dc
DM
5748 }
5749 ],
5750 "info" : {
5751 "GET" : {
732d76e1 5752 "description" : "List relay domains.",
eff914dc
DM
5753 "method" : "GET",
5754 "name" : "index",
5755 "parameters" : {
5756 "additionalProperties" : 0
5757 },
a55e94a6
DM
5758 "permissions" : {
5759 "check" : [
732d76e1
DM
5760 "admin",
5761 "audit"
a55e94a6
DM
5762 ]
5763 },
eff914dc
DM
5764 "proxyto" : "master",
5765 "returns" : {
5766 "items" : {
5767 "properties" : {
a55e94a6 5768 "comment" : {
eff914dc 5769 "type" : "string"
a55e94a6 5770 },
732d76e1
DM
5771 "domain" : {
5772 "type" : "string"
eff914dc
DM
5773 }
5774 },
5775 "type" : "object"
5776 },
5777 "links" : [
5778 {
732d76e1 5779 "href" : "{domain}",
eff914dc
DM
5780 "rel" : "child"
5781 }
5782 ],
5783 "type" : "array"
5784 }
5785 },
5786 "POST" : {
732d76e1 5787 "description" : "Add relay domain.",
eff914dc
DM
5788 "method" : "POST",
5789 "name" : "create",
5790 "parameters" : {
5791 "additionalProperties" : 0,
5792 "properties" : {
a55e94a6 5793 "comment" : {
732d76e1 5794 "description" : "Comment.",
eff914dc 5795 "optional" : 1,
eff914dc
DM
5796 "type" : "string",
5797 "typetext" : "<string>"
5798 },
732d76e1
DM
5799 "domain" : {
5800 "description" : "Domain name.",
5801 "format" : "dns-name",
eff914dc
DM
5802 "type" : "string",
5803 "typetext" : "<string>"
5804 }
732d76e1 5805 }
eff914dc 5806 },
a55e94a6
DM
5807 "permissions" : {
5808 "check" : [
5809 "admin"
5810 ]
5811 },
eff914dc
DM
5812 "protected" : 1,
5813 "proxyto" : "master",
5814 "returns" : {
5815 "type" : "null"
5816 }
5817 }
5818 },
5819 "leaf" : 0,
732d76e1
DM
5820 "path" : "/config/domains",
5821 "text" : "domains"
eff914dc
DM
5822 },
5823 {
5824 "children" : [
5825 {
5826 "info" : {
5827 "DELETE" : {
732d76e1 5828 "description" : "Delete a fetchmail configuration entry.",
eff914dc
DM
5829 "method" : "DELETE",
5830 "name" : "delete",
5831 "parameters" : {
5832 "additionalProperties" : 0,
5833 "properties" : {
732d76e1
DM
5834 "id" : {
5835 "description" : "Unique ID",
5836 "maxLength" : 16,
5837 "pattern" : "[A-Za-z0-9]+",
5838 "type" : "string"
eff914dc
DM
5839 }
5840 }
5841 },
732d76e1
DM
5842 "permissions" : {
5843 "check" : [
5844 "admin"
5845 ]
5846 },
eff914dc
DM
5847 "protected" : 1,
5848 "proxyto" : "master",
5849 "returns" : {
5850 "type" : "null"
5851 }
5852 },
5853 "GET" : {
732d76e1 5854 "description" : "Read fetchmail user configuration.",
eff914dc
DM
5855 "method" : "GET",
5856 "name" : "read",
5857 "parameters" : {
5858 "additionalProperties" : 0,
5859 "properties" : {
732d76e1
DM
5860 "id" : {
5861 "description" : "Unique ID",
5862 "maxLength" : 16,
5863 "pattern" : "[A-Za-z0-9]+",
5864 "type" : "string"
eff914dc
DM
5865 }
5866 }
5867 },
732d76e1
DM
5868 "permissions" : {
5869 "check" : [
5870 "admin",
5871 "audit"
5872 ]
5873 },
5874 "protected" : 1,
eff914dc
DM
5875 "proxyto" : "master",
5876 "returns" : {
5877 "properties" : {
732d76e1
DM
5878 "enable" : {
5879 "default" : 0,
5880 "description" : "Flag to enable or disable polling.",
5881 "optional" : 1,
5882 "type" : "boolean"
5883 },
5884 "id" : {
5885 "description" : "Unique ID",
5886 "maxLength" : 16,
5887 "pattern" : "[A-Za-z0-9]+",
eff914dc
DM
5888 "type" : "string"
5889 },
732d76e1
DM
5890 "interval" : {
5891 "description" : "Only check this site every <interval> poll cycles. A poll cycle is 5 minutes.",
5892 "maximum" : 2016,
5893 "minimum" : 1,
5894 "optional" : 1,
5895 "type" : "integer"
5896 },
5897 "keep" : {
5898 "default" : 0,
5899 "description" : "Keep retrieved messages on the remote mailserver.",
5900 "optional" : 1,
5901 "type" : "boolean"
5902 },
5903 "pass" : {
5904 "description" : "The password used tfor server login.",
5905 "maxLength" : 64,
5906 "optional" : 1,
5907 "type" : "string"
5908 },
5909 "port" : {
5910 "description" : "Port number.",
5911 "maximum" : 65535,
5912 "minimum" : 1,
5913 "optional" : 1,
5914 "type" : "integer"
5915 },
5916 "protocol" : {
5917 "description" : "Specify the protocol to use when communicating with the remote mailserver",
5918 "enum" : [
5919 "pop3",
5920 "imap"
5921 ],
5922 "optional" : 1,
5923 "type" : "string"
5924 },
5925 "server" : {
5926 "description" : "Server address (IP or DNS name).",
5927 "format" : "address",
5928 "optional" : 1,
5929 "type" : "string"
5930 },
5931 "ssl" : {
5932 "default" : 0,
5933 "description" : "Use SSL.",
5934 "optional" : 1,
5935 "type" : "boolean"
5936 },
5937 "target" : {
5938 "description" : "The target email address (where to deliver fetched mails).",
5939 "maxLength" : 512,
5940 "minLength" : 3,
5941 "optional" : 1,
5942 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
5943 "type" : "string"
5944 },
5945 "user" : {
5946 "description" : "The user identification to be used when logging in to the server",
5947 "maxLength" : 64,
5948 "minLength" : 1,
5949 "optional" : 1,
eff914dc
DM
5950 "type" : "string"
5951 }
5952 },
5953 "type" : "object"
5954 }
5955 },
5956 "PUT" : {
732d76e1 5957 "description" : "Update fetchmail user configuration.",
eff914dc
DM
5958 "method" : "PUT",
5959 "name" : "write",
5960 "parameters" : {
5961 "additionalProperties" : 0,
5962 "properties" : {
732d76e1
DM
5963 "enable" : {
5964 "default" : 0,
5965 "description" : "Flag to enable or disable polling.",
5966 "optional" : 1,
5967 "type" : "boolean",
5968 "typetext" : "<boolean>"
5969 },
5970 "id" : {
5971 "description" : "Unique ID",
5972 "maxLength" : 16,
5973 "pattern" : "[A-Za-z0-9]+",
5974 "type" : "string"
5975 },
5976 "interval" : {
5977 "description" : "Only check this site every <interval> poll cycles. A poll cycle is 5 minutes.",
5978 "maximum" : 2016,
5979 "minimum" : 1,
5980 "optional" : 1,
5981 "type" : "integer",
5982 "typetext" : "<integer> (1 - 2016)"
5983 },
5984 "keep" : {
5985 "default" : 0,
5986 "description" : "Keep retrieved messages on the remote mailserver.",
5987 "optional" : 1,
5988 "type" : "boolean",
5989 "typetext" : "<boolean>"
5990 },
5991 "pass" : {
5992 "description" : "The password used tfor server login.",
5993 "maxLength" : 64,
5994 "optional" : 1,
eff914dc
DM
5995 "type" : "string",
5996 "typetext" : "<string>"
5997 },
732d76e1
DM
5998 "port" : {
5999 "description" : "Port number.",
6000 "maximum" : 65535,
6001 "minimum" : 1,
6002 "optional" : 1,
6003 "type" : "integer",
6004 "typetext" : "<integer> (1 - 65535)"
6005 },
6006 "protocol" : {
6007 "description" : "Specify the protocol to use when communicating with the remote mailserver",
6008 "enum" : [
6009 "pop3",
6010 "imap"
6011 ],
6012 "optional" : 1,
6013 "type" : "string"
6014 },
6015 "server" : {
6016 "description" : "Server address (IP or DNS name).",
6017 "format" : "address",
6018 "optional" : 1,
6019 "type" : "string",
6020 "typetext" : "<string>"
6021 },
6022 "ssl" : {
6023 "default" : 0,
6024 "description" : "Use SSL.",
6025 "optional" : 1,
6026 "type" : "boolean",
6027 "typetext" : "<boolean>"
6028 },
6029 "target" : {
6030 "description" : "The target email address (where to deliver fetched mails).",
6031 "maxLength" : 512,
6032 "minLength" : 3,
6033 "optional" : 1,
6034 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
6035 "type" : "string"
6036 },
6037 "user" : {
6038 "description" : "The user identification to be used when logging in to the server",
6039 "maxLength" : 64,
6040 "minLength" : 1,
6041 "optional" : 1,
eff914dc
DM
6042 "type" : "string",
6043 "typetext" : "<string>"
6044 }
6045 }
6046 },
732d76e1
DM
6047 "permissions" : {
6048 "check" : [
6049 "admin"
6050 ]
6051 },
eff914dc
DM
6052 "protected" : 1,
6053 "proxyto" : "master",
6054 "returns" : {
6055 "type" : "null"
6056 }
6057 }
6058 },
6059 "leaf" : 1,
732d76e1
DM
6060 "path" : "/config/fetchmail/{id}",
6061 "text" : "{id}"
eff914dc
DM
6062 }
6063 ],
6064 "info" : {
6065 "GET" : {
732d76e1 6066 "description" : "List fetchmail users.",
eff914dc
DM
6067 "method" : "GET",
6068 "name" : "index",
6069 "parameters" : {
6070 "additionalProperties" : 0
6071 },
732d76e1
DM
6072 "permissions" : {
6073 "check" : [
6074 "admin",
6075 "audit"
6076 ]
6077 },
6078 "protected" : 1,
eff914dc
DM
6079 "proxyto" : "master",
6080 "returns" : {
6081 "items" : {
6082 "properties" : {
732d76e1
DM
6083 "enable" : {
6084 "default" : 0,
6085 "description" : "Flag to enable or disable polling.",
6086 "optional" : 1,
6087 "type" : "boolean"
6088 },
6089 "id" : {
6090 "description" : "Unique ID",
6091 "maxLength" : 16,
6092 "pattern" : "[A-Za-z0-9]+",
eff914dc
DM
6093 "type" : "string"
6094 },
732d76e1
DM
6095 "interval" : {
6096 "description" : "Only check this site every <interval> poll cycles. A poll cycle is 5 minutes.",
6097 "maximum" : 2016,
6098 "minimum" : 1,
6099 "optional" : 1,
6100 "type" : "integer"
6101 },
6102 "keep" : {
6103 "default" : 0,
6104 "description" : "Keep retrieved messages on the remote mailserver.",
6105 "optional" : 1,
6106 "type" : "boolean"
6107 },
6108 "pass" : {
6109 "description" : "The password used tfor server login.",
6110 "maxLength" : 64,
6111 "optional" : 1,
6112 "type" : "string"
6113 },
6114 "port" : {
6115 "description" : "Port number.",
6116 "maximum" : 65535,
6117 "minimum" : 1,
6118 "optional" : 1,
6119 "type" : "integer"
6120 },
6121 "protocol" : {
6122 "description" : "Specify the protocol to use when communicating with the remote mailserver",
6123 "enum" : [
6124 "pop3",
6125 "imap"
6126 ],
6127 "optional" : 1,
6128 "type" : "string"
6129 },
6130 "server" : {
6131 "description" : "Server address (IP or DNS name).",
6132 "format" : "address",
6133 "optional" : 1,
6134 "type" : "string"
6135 },
6136 "ssl" : {
6137 "default" : 0,
6138 "description" : "Use SSL.",
6139 "optional" : 1,
6140 "type" : "boolean"
6141 },
6142 "target" : {
6143 "description" : "The target email address (where to deliver fetched mails).",
6144 "maxLength" : 512,
6145 "minLength" : 3,
6146 "optional" : 1,
6147 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
6148 "type" : "string"
6149 },
6150 "user" : {
6151 "description" : "The user identification to be used when logging in to the server",
6152 "maxLength" : 64,
6153 "minLength" : 1,
6154 "optional" : 1,
eff914dc
DM
6155 "type" : "string"
6156 }
6157 },
6158 "type" : "object"
6159 },
6160 "links" : [
6161 {
732d76e1 6162 "href" : "{id}",
eff914dc
DM
6163 "rel" : "child"
6164 }
6165 ],
6166 "type" : "array"
6167 }
6168 },
6169 "POST" : {
732d76e1 6170 "description" : "Create fetchmail user configuration.",
eff914dc
DM
6171 "method" : "POST",
6172 "name" : "create",
6173 "parameters" : {
6174 "additionalProperties" : 0,
6175 "properties" : {
732d76e1
DM
6176 "enable" : {
6177 "default" : 0,
6178 "description" : "Flag to enable or disable polling.",
6179 "optional" : 1,
6180 "type" : "boolean",
6181 "typetext" : "<boolean>"
6182 },
6183 "interval" : {
6184 "description" : "Only check this site every <interval> poll cycles. A poll cycle is 5 minutes.",
6185 "maximum" : 2016,
6186 "minimum" : 1,
6187 "optional" : 1,
6188 "type" : "integer",
6189 "typetext" : "<integer> (1 - 2016)"
6190 },
6191 "keep" : {
6192 "default" : 0,
6193 "description" : "Keep retrieved messages on the remote mailserver.",
eff914dc 6194 "optional" : 1,
732d76e1
DM
6195 "type" : "boolean",
6196 "typetext" : "<boolean>"
6197 },
6198 "pass" : {
6199 "description" : "The password used tfor server login.",
6200 "maxLength" : 64,
eff914dc
DM
6201 "type" : "string",
6202 "typetext" : "<string>"
6203 },
732d76e1
DM
6204 "port" : {
6205 "description" : "Port number.",
6206 "maximum" : 65535,
6207 "minimum" : 1,
6208 "optional" : 1,
6209 "type" : "integer",
6210 "typetext" : "<integer> (1 - 65535)"
6211 },
6212 "protocol" : {
6213 "description" : "Specify the protocol to use when communicating with the remote mailserver",
6214 "enum" : [
6215 "pop3",
6216 "imap"
6217 ],
6218 "type" : "string"
6219 },
6220 "server" : {
6221 "description" : "Server address (IP or DNS name).",
6222 "format" : "address",
6223 "type" : "string",
6224 "typetext" : "<string>"
6225 },
6226 "ssl" : {
6227 "default" : 0,
6228 "description" : "Use SSL.",
6229 "optional" : 1,
6230 "type" : "boolean",
6231 "typetext" : "<boolean>"
6232 },
6233 "target" : {
6234 "description" : "The target email address (where to deliver fetched mails).",
6235 "maxLength" : 512,
6236 "minLength" : 3,
6237 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
6238 "type" : "string"
6239 },
6240 "user" : {
6241 "description" : "The user identification to be used when logging in to the server",
6242 "maxLength" : 64,
6243 "minLength" : 1,
eff914dc
DM
6244 "type" : "string",
6245 "typetext" : "<string>"
6246 }
6247 }
6248 },
732d76e1
DM
6249 "permissions" : {
6250 "check" : [
6251 "admin"
6252 ]
6253 },
eff914dc
DM
6254 "protected" : 1,
6255 "proxyto" : "master",
6256 "returns" : {
732d76e1
DM
6257 "description" : "Unique ID",
6258 "maxLength" : 16,
6259 "pattern" : "[A-Za-z0-9]+",
6260 "type" : "string"
eff914dc
DM
6261 }
6262 }
6263 },
6264 "leaf" : 0,
732d76e1
DM
6265 "path" : "/config/fetchmail",
6266 "text" : "fetchmail"
eff914dc
DM
6267 },
6268 {
6269 "children" : [
6270 {
6271 "info" : {
6272 "DELETE" : {
6273 "description" : "Delete a transport map entry",
6274 "method" : "DELETE",
6275 "name" : "delete",
6276 "parameters" : {
6277 "additionalProperties" : 0,
6278 "properties" : {
6279 "domain" : {
6280 "description" : "Domain name.",
6281 "format" : "transport-domain",
6282 "type" : "string",
6283 "typetext" : "<string>"
6284 }
6285 }
6286 },
732d76e1
DM
6287 "permissions" : {
6288 "check" : [
6289 "admin"
6290 ]
6291 },
eff914dc
DM
6292 "protected" : 1,
6293 "proxyto" : "master",
6294 "returns" : {
6295 "type" : "null"
6296 }
6297 },
6298 "GET" : {
6299 "description" : "Read transport map entry.",
6300 "method" : "GET",
6301 "name" : "read",
6302 "parameters" : {
6303 "additionalProperties" : 0,
6304 "properties" : {
6305 "domain" : {
6306 "description" : "Domain name.",
6307 "format" : "transport-domain",
6308 "type" : "string",
6309 "typetext" : "<string>"
6310 }
6311 }
6312 },
732d76e1
DM
6313 "permissions" : {
6314 "check" : [
6315 "admin",
6316 "audit"
6317 ]
6318 },
eff914dc
DM
6319 "proxyto" : "master",
6320 "returns" : {
6321 "properties" : {
6322 "comment" : {
6323 "type" : "string"
6324 },
6325 "domain" : {
6326 "type" : "string"
410dc2c9 6327 },
eff914dc
DM
6328 "host" : {
6329 "type" : "string"
6330 },
6331 "port" : {
6332 "type" : "integer"
6333 },
6334 "use_mx" : {
6335 "type" : "boolean"
6336 }
6337 },
6338 "type" : "object"
6339 }
6340 },
6341 "PUT" : {
6342 "description" : "Update transport map entry.",
6343 "method" : "PUT",
6344 "name" : "write",
6345 "parameters" : {
6346 "additionalProperties" : 0,
6347 "properties" : {
6348 "comment" : {
6349 "description" : "Comment.",
410dc2c9
DM
6350 "optional" : 1,
6351 "type" : "string",
6352 "typetext" : "<string>"
6353 },
eff914dc
DM
6354 "domain" : {
6355 "description" : "Domain name.",
6356 "format" : "transport-domain",
410dc2c9
DM
6357 "type" : "string",
6358 "typetext" : "<string>"
6359 },
eff914dc
DM
6360 "host" : {
6361 "description" : "Target host (name or IP address).",
6362 "format" : "address",
410dc2c9
DM
6363 "optional" : 1,
6364 "type" : "string",
6365 "typetext" : "<string>"
6366 },
410dc2c9 6367 "port" : {
eff914dc 6368 "description" : "SMTP port.",
410dc2c9
DM
6369 "maximum" : 65535,
6370 "minimum" : 1,
6371 "optional" : 1,
6372 "type" : "integer",
6373 "typetext" : "<integer> (1 - 65535)"
6374 },
eff914dc
DM
6375 "use_mx" : {
6376 "description" : "Enable MX lookups.",
410dc2c9 6377 "optional" : 1,
eff914dc
DM
6378 "type" : "boolean",
6379 "typetext" : "<boolean>"
410dc2c9 6380 }
eff914dc 6381 }
410dc2c9 6382 },
732d76e1
DM
6383 "permissions" : {
6384 "check" : [
6385 "admin"
6386 ]
6387 },
410dc2c9
DM
6388 "protected" : 1,
6389 "proxyto" : "master",
6390 "returns" : {
6391 "type" : "null"
6392 }
6393 }
6394 },
6395 "leaf" : 1,
eff914dc
DM
6396 "path" : "/config/transport/{domain}",
6397 "text" : "{domain}"
410dc2c9
DM
6398 }
6399 ],
6400 "info" : {
6401 "GET" : {
eff914dc 6402 "description" : "List transport map entries.",
410dc2c9
DM
6403 "method" : "GET",
6404 "name" : "index",
6405 "parameters" : {
6406 "additionalProperties" : 0
6407 },
732d76e1
DM
6408 "permissions" : {
6409 "check" : [
6410 "admin",
6411 "audit"
6412 ]
6413 },
410dc2c9
DM
6414 "proxyto" : "master",
6415 "returns" : {
6416 "items" : {
6417 "properties" : {
eff914dc 6418 "comment" : {
410dc2c9
DM
6419 "type" : "string"
6420 },
eff914dc 6421 "domain" : {
410dc2c9
DM
6422 "type" : "string"
6423 },
eff914dc 6424 "host" : {
410dc2c9 6425 "type" : "string"
eff914dc
DM
6426 },
6427 "port" : {
6428 "type" : "integer"
6429 },
6430 "use_mx" : {
6431 "type" : "boolean"
410dc2c9
DM
6432 }
6433 },
6434 "type" : "object"
6435 },
6436 "links" : [
6437 {
eff914dc 6438 "href" : "{id}",
410dc2c9
DM
6439 "rel" : "child"
6440 }
6441 ],
6442 "type" : "array"
6443 }
6444 },
6445 "POST" : {
eff914dc 6446 "description" : "Add transport map entry.",
410dc2c9
DM
6447 "method" : "POST",
6448 "name" : "create",
6449 "parameters" : {
6450 "additionalProperties" : 0,
6451 "properties" : {
eff914dc
DM
6452 "comment" : {
6453 "description" : "Comment.",
410dc2c9
DM
6454 "optional" : 1,
6455 "type" : "string",
6456 "typetext" : "<string>"
6457 },
eff914dc
DM
6458 "domain" : {
6459 "description" : "Domain name.",
6460 "format" : "transport-domain",
410dc2c9
DM
6461 "type" : "string",
6462 "typetext" : "<string>"
6463 },
eff914dc
DM
6464 "host" : {
6465 "description" : "Target host (name or IP address).",
6466 "format" : "address",
410dc2c9
DM
6467 "type" : "string",
6468 "typetext" : "<string>"
6469 },
410dc2c9 6470 "port" : {
eff914dc
DM
6471 "default" : 25,
6472 "description" : "SMTP port.",
410dc2c9
DM
6473 "maximum" : 65535,
6474 "minimum" : 1,
6475 "optional" : 1,
6476 "type" : "integer",
6477 "typetext" : "<integer> (1 - 65535)"
6478 },
eff914dc
DM
6479 "use_mx" : {
6480 "default" : 1,
6481 "description" : "Enable MX lookups.",
410dc2c9 6482 "optional" : 1,
eff914dc
DM
6483 "type" : "boolean",
6484 "typetext" : "<boolean>"
410dc2c9 6485 }
eff914dc 6486 }
410dc2c9 6487 },
732d76e1
DM
6488 "permissions" : {
6489 "check" : [
6490 "admin"
6491 ]
6492 },
410dc2c9
DM
6493 "protected" : 1,
6494 "proxyto" : "master",
6495 "returns" : {
6496 "type" : "null"
6497 }
6498 }
6499 },
6500 "leaf" : 0,
eff914dc
DM
6501 "path" : "/config/transport",
6502 "text" : "transport"
410dc2c9
DM
6503 },
6504 {
6505 "children" : [
6506 {
6507 "info" : {
6508 "DELETE" : {
eff914dc 6509 "description" : "Delete a truster network",
410dc2c9
DM
6510 "method" : "DELETE",
6511 "name" : "delete",
6512 "parameters" : {
6513 "additionalProperties" : 0,
6514 "properties" : {
eff914dc
DM
6515 "cidr" : {
6516 "description" : "IPv4 or IPv6 network in CIDR notation.",
6517 "format" : "CIDR",
6518 "type" : "string",
6519 "typetext" : "<string>"
6520 }
6521 }
6522 },
732d76e1
DM
6523 "permissions" : {
6524 "check" : [
6525 "admin"
6526 ]
6527 },
eff914dc
DM
6528 "protected" : 1,
6529 "proxyto" : "master",
6530 "returns" : {
6531 "type" : "null"
6532 }
6533 },
6534 "GET" : {
6535 "description" : "Read trusted network data (comment).",
6536 "method" : "GET",
6537 "name" : "read",
6538 "parameters" : {
6539 "additionalProperties" : 0,
6540 "properties" : {
6541 "cidr" : {
6542 "description" : "IPv4 or IPv6 network in CIDR notation.",
6543 "format" : "CIDR",
6544 "type" : "string",
6545 "typetext" : "<string>"
6546 }
6547 }
6548 },
732d76e1
DM
6549 "permissions" : {
6550 "check" : [
6551 "admin",
6552 "audit"
6553 ]
6554 },
eff914dc
DM
6555 "proxyto" : "master",
6556 "returns" : {
6557 "properties" : {
6558 "cidr" : {
6559 "type" : "string"
6560 },
6561 "comment" : {
6562 "type" : "string"
6563 }
6564 },
6565 "type" : "object"
6566 }
6567 },
6568 "PUT" : {
6569 "description" : "Update trusted data (comment).",
6570 "method" : "PUT",
6571 "name" : "write",
6572 "parameters" : {
6573 "additionalProperties" : 0,
6574 "properties" : {
6575 "cidr" : {
6576 "description" : "IPv4 or IPv6 network in CIDR notation.",
6577 "type" : "string",
6578 "typetext" : "<string>"
6579 },
6580 "comment" : {
6581 "description" : "Comment.",
410dc2c9
DM
6582 "type" : "string",
6583 "typetext" : "<string>"
6584 }
6585 }
6586 },
732d76e1
DM
6587 "permissions" : {
6588 "check" : [
6589 "admin"
6590 ]
6591 },
410dc2c9
DM
6592 "protected" : 1,
6593 "proxyto" : "master",
6594 "returns" : {
6595 "type" : "null"
6596 }
6597 }
6598 },
6599 "leaf" : 1,
eff914dc
DM
6600 "path" : "/config/mynetworks/{cidr}",
6601 "text" : "{cidr}"
410dc2c9
DM
6602 }
6603 ],
6604 "info" : {
6605 "GET" : {
eff914dc 6606 "description" : "List of trusted networks from where SMTP clients are allowed to relay mail through Proxmox Mail Gateway.",
410dc2c9
DM
6607 "method" : "GET",
6608 "name" : "index",
6609 "parameters" : {
6610 "additionalProperties" : 0
6611 },
732d76e1
DM
6612 "permissions" : {
6613 "check" : [
6614 "admin",
6615 "audit"
6616 ]
6617 },
410dc2c9
DM
6618 "proxyto" : "master",
6619 "returns" : {
6620 "items" : {
6621 "properties" : {
eff914dc 6622 "cidr" : {
410dc2c9
DM
6623 "type" : "string"
6624 }
6625 },
6626 "type" : "object"
6627 },
6628 "links" : [
6629 {
eff914dc 6630 "href" : "{cide}",
410dc2c9
DM
6631 "rel" : "child"
6632 }
6633 ],
6634 "type" : "array"
6635 }
6636 },
6637 "POST" : {
eff914dc 6638 "description" : "Add a trusted network.",
410dc2c9
DM
6639 "method" : "POST",
6640 "name" : "create",
6641 "parameters" : {
6642 "additionalProperties" : 0,
6643 "properties" : {
eff914dc
DM
6644 "cidr" : {
6645 "description" : "IPv4 or IPv6 network in CIDR notation.",
6646 "format" : "CIDR",
6647 "type" : "string",
6648 "typetext" : "<string>"
6649 },
6650 "comment" : {
6651 "description" : "Comment.",
6652 "optional" : 1,
410dc2c9
DM
6653 "type" : "string",
6654 "typetext" : "<string>"
6655 }
6656 }
6657 },
732d76e1
DM
6658 "permissions" : {
6659 "check" : [
6660 "admin"
6661 ]
6662 },
410dc2c9
DM
6663 "protected" : 1,
6664 "proxyto" : "master",
6665 "returns" : {
6666 "type" : "null"
6667 }
6668 }
6669 },
6670 "leaf" : 0,
eff914dc
DM
6671 "path" : "/config/mynetworks",
6672 "text" : "mynetworks"
410dc2c9
DM
6673 },
6674 {
d7cd791b
DM
6675 "children" : [
6676 {
6677 "info" : {
6678 "GET" : {
6679 "description" : "Cluster node index.",
6680 "method" : "GET",
6681 "name" : "nodes",
6682 "parameters" : {
6683 "additionalProperties" : 0
6684 },
6685 "permissions" : {
6686 "check" : [
bb6e6e0d
DM
6687 "admin",
6688 "qmanager",
6689 "audit"
d7cd791b
DM
6690 ]
6691 },
6692 "returns" : {
6693 "items" : {
6694 "properties" : {
6695 "cid" : {
6696 "type" : "integer"
6697 },
6698 "fingerprint" : {
6699 "type" : "string"
6700 },
6701 "hostrsapubkey" : {
6702 "type" : "string"
6703 },
6704 "ip" : {
6705 "type" : "string"
6706 },
6707 "name" : {
6708 "type" : "string"
6709 },
6710 "rootrsapubkey" : {
6711 "type" : "string"
6712 },
6713 "type" : {
6714 "type" : "string"
6715 }
6716 },
6717 "type" : "object"
6718 },
d7cd791b
DM
6719 "type" : "array"
6720 }
6721 },
6722 "POST" : {
6723 "description" : "Add an node to the cluster config.",
6724 "method" : "POST",
6725 "name" : "add_node",
6726 "parameters" : {
6727 "additionalProperties" : 0,
6728 "properties" : {
6729 "fingerprint" : {
6730 "description" : "SSL certificate fingerprint.",
6731 "optional" : 0,
6732 "pattern" : "^(:?[A-Z0-9][A-Z0-9]:){31}[A-Z0-9][A-Z0-9]$",
6733 "type" : "string"
6734 },
6735 "hostrsapubkey" : {
6736 "description" : "Public SSH RSA key for the host.",
6737 "optional" : 0,
6738 "pattern" : "^[A-Za-z0-9\\.\\/\\+]{200,}$",
6739 "type" : "string"
6740 },
6741 "ip" : {
6742 "description" : "IP address.",
6743 "format" : "ip",
6744 "optional" : 0,
6745 "type" : "string",
6746 "typetext" : "<string>"
6747 },
6748 "maxcid" : {
6749 "description" : "Maximum used cluster node ID (used internally, do not modify).",
6750 "minimum" : 1,
6751 "optional" : 1,
6752 "type" : "integer",
6753 "typetext" : "<integer> (1 - N)"
6754 },
6755 "name" : {
6756 "description" : "Node name.",
6757 "format" : "pve-node",
6758 "optional" : 0,
6759 "type" : "string",
6760 "typetext" : "<string>"
6761 },
6762 "rootrsapubkey" : {
6763 "description" : "Public SSH RSA key for the root user.",
6764 "optional" : 0,
6765 "pattern" : "^[A-Za-z0-9\\.\\/\\+]{200,}$",
6766 "type" : "string"
6767 }
6768 },
6769 "type" : "object"
6770 },
6771 "protected" : 1,
6772 "proxyto" : "master",
6773 "returns" : {
6774 "description" : "Returns the resulting node list.",
6775 "items" : {
6776 "properties" : {
6777 "cid" : {
6778 "type" : "integer"
6779 }
6780 },
6781 "type" : "object"
6782 },
6783 "type" : "array"
6784 }
6785 }
6786 },
6787 "leaf" : 1,
6788 "path" : "/config/cluster/nodes",
6789 "text" : "nodes"
6790 },
6791 {
6792 "info" : {
6793 "GET" : {
6794 "description" : "Cluster node status.",
6795 "method" : "GET",
6796 "name" : "status",
6797 "parameters" : {
bb6e6e0d
DM
6798 "additionalProperties" : 0,
6799 "properties" : {
6800 "list_single_node" : {
6801 "default" : 0,
6802 "description" : "List local node if there is no cluster defined. Please note that RSA keys and fingerprint are not valid in that case.",
6803 "optional" : 1,
6804 "type" : "boolean",
6805 "typetext" : "<boolean>"
6806 }
6807 }
d7cd791b
DM
6808 },
6809 "permissions" : {
6810 "check" : [
bb6e6e0d
DM
6811 "admin",
6812 "qmanager",
6813 "audit"
d7cd791b
DM
6814 ]
6815 },
6816 "returns" : {
6817 "items" : {
6818 "properties" : {
6819 "cid" : {
6820 "type" : "integer"
6821 },
6822 "fingerprint" : {
6823 "type" : "string"
6824 },
6825 "hostrsapubkey" : {
6826 "type" : "string"
6827 },
6828 "ip" : {
6829 "type" : "string"
6830 },
6831 "name" : {
6832 "type" : "string"
6833 },
6834 "rootrsapubkey" : {
6835 "type" : "string"
6836 },
6837 "type" : {
6838 "type" : "string"
6839 }
6840 },
6841 "type" : "object"
6842 },
6843 "links" : [
6844 {
6845 "href" : "{cid}",
6846 "rel" : "child"
6847 }
6848 ],
6849 "type" : "array"
6850 }
6851 }
6852 },
6853 "leaf" : 1,
6854 "path" : "/config/cluster/status",
6855 "text" : "status"
6856 },
6857 {
6858 "info" : {
6859 "POST" : {
6860 "description" : "Create initial cluster config with current node as master.",
6861 "method" : "POST",
6862 "name" : "create",
6863 "parameters" : {
6864 "additionalProperties" : 0
6865 },
6866 "protected" : 1,
6867 "returns" : {
6868 "type" : "string"
6869 }
6870 }
6871 },
6872 "leaf" : 1,
6873 "path" : "/config/cluster/create",
6874 "text" : "create"
6875 },
6876 {
6877 "info" : {
6878 "POST" : {
6879 "description" : "Join local node to an existing cluster.",
6880 "method" : "POST",
6881 "name" : "join",
6882 "parameters" : {
6883 "additionalProperties" : 0,
6884 "properties" : {
6885 "fingerprint" : {
6886 "description" : "SSL certificate fingerprint.",
6887 "pattern" : "^(:?[A-Z0-9][A-Z0-9]:){31}[A-Z0-9][A-Z0-9]$",
6888 "type" : "string"
6889 },
6890 "master_ip" : {
6891 "description" : "IP address.",
6892 "format" : "ip",
6893 "type" : "string",
6894 "typetext" : "<string>"
6895 },
6896 "password" : {
6897 "description" : "Superuser password.",
6898 "maxLength" : 128,
6899 "type" : "string",
6900 "typetext" : "<string>"
6901 }
6902 }
6903 },
6904 "protected" : 1,
6905 "returns" : {
6906 "type" : "string"
6907 }
6908 }
6909 },
6910 "leaf" : 1,
6911 "path" : "/config/cluster/join",
6912 "text" : "join"
6913 }
6914 ],
410dc2c9
DM
6915 "info" : {
6916 "GET" : {
d7cd791b 6917 "description" : "Directory index.",
410dc2c9
DM
6918 "method" : "GET",
6919 "name" : "index",
6920 "parameters" : {
6921 "additionalProperties" : 0
6922 },
d7cd791b
DM
6923 "permissions" : {
6924 "user" : "all"
6925 },
410dc2c9
DM
6926 "returns" : {
6927 "items" : {
d7cd791b 6928 "properties" : {},
410dc2c9
DM
6929 "type" : "object"
6930 },
6931 "links" : [
6932 {
d7cd791b 6933 "href" : "{name}",
410dc2c9
DM
6934 "rel" : "child"
6935 }
6936 ],
6937 "type" : "array"
6938 }
6939 }
6940 },
d7cd791b 6941 "leaf" : 0,
410dc2c9
DM
6942 "path" : "/config/cluster",
6943 "text" : "cluster"
6944 },
9fda36b0
DM
6945 {
6946 "info" : {
6947 "GET" : {
6948 "description" : "Get Mime Types List",
6949 "method" : "GET",
6950 "name" : "index",
6951 "parameters" : {
6952 "additionalProperties" : 0
6953 },
6954 "returns" : {
6955 "items" : {
6956 "properties" : {
6957 "mimetype" : {
6958 "type" : "string"
6959 },
6960 "text" : {
6961 "type" : "string"
6962 }
6963 },
6964 "type" : "object"
6965 },
6966 "type" : "array"
6967 }
6968 }
6969 },
6970 "leaf" : 1,
6971 "path" : "/config/mimetypes",
6972 "text" : "mimetypes"
6973 },
410dc2c9
DM
6974 {
6975 "info" : {
6976 "GET" : {
6977 "description" : "Read admin configuration properties.",
6978 "method" : "GET",
6979 "name" : "read_admin_section",
6980 "parameters" : {
6981 "additionalProperties" : 0
6982 },
732d76e1
DM
6983 "permissions" : {
6984 "check" : [
6985 "admin",
6986 "audit"
6987 ]
6988 },
410dc2c9
DM
6989 "proxyto" : "master",
6990 "returns" : {
6991 "type" : "object"
6992 }
6993 },
6994 "PUT" : {
6995 "description" : "Update admin configuration properties.",
6996 "method" : "PUT",
6997 "name" : "update_admin_section",
6998 "parameters" : {
6999 "additionalProperties" : 0,
7000 "properties" : {
9fda36b0
DM
7001 "advfilter" : {
7002 "default" : 1,
7003 "description" : "Use advanced filters for statistic.",
7004 "optional" : 1,
7005 "type" : "boolean",
7006 "typetext" : "<boolean>"
7007 },
410dc2c9
DM
7008 "dailyreport" : {
7009 "default" : 1,
7010 "description" : "Send daily reports.",
7011 "optional" : 1,
7012 "type" : "boolean",
7013 "typetext" : "<boolean>"
7014 },
7015 "delete" : {
7016 "description" : "A list of settings you want to delete.",
7017 "format" : "pve-configid-list",
7018 "maxLength" : 4096,
7019 "optional" : 1,
7020 "type" : "string",
7021 "typetext" : "<string>"
7022 },
7023 "demo" : {
7024 "default" : 0,
7025 "description" : "Demo mode - do not start SMTP filter.",
7026 "optional" : 1,
7027 "type" : "boolean",
7028 "typetext" : "<boolean>"
7029 },
7030 "digest" : {
7031 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
7032 "maxLength" : 40,
7033 "optional" : 1,
7034 "type" : "string",
7035 "typetext" : "<string>"
7036 },
eff914dc
DM
7037 "email" : {
7038 "default" : "admin@domain.tld",
7039 "description" : "Administrator E-Mail address.",
7040 "format" : "email",
7041 "optional" : 1,
7042 "type" : "string",
7043 "typetext" : "<string>"
7044 },
9fda36b0
DM
7045 "http_proxy" : {
7046 "description" : "Specify external http proxy which is used for downloads (example: 'http://username:password@host:port/')",
410dc2c9 7047 "optional" : 1,
9fda36b0
DM
7048 "pattern" : "http://.*",
7049 "type" : "string"
a55e94a6
DM
7050 },
7051 "statlifetime" : {
7052 "default" : 7,
7053 "description" : "User Statistics Lifetime (days)",
7054 "minimum" : 1,
7055 "optional" : 1,
7056 "type" : "integer",
7057 "typetext" : "<integer> (1 - N)"
410dc2c9
DM
7058 }
7059 },
7060 "type" : "object"
7061 },
732d76e1
DM
7062 "permissions" : {
7063 "check" : [
7064 "admin"
7065 ]
7066 },
410dc2c9
DM
7067 "protected" : 1,
7068 "proxyto" : "master",
7069 "returns" : {
7070 "type" : "null"
7071 }
7072 }
7073 },
7074 "leaf" : 1,
7075 "path" : "/config/admin",
7076 "text" : "admin"
7077 },
7078 {
7079 "info" : {
7080 "GET" : {
7081 "description" : "Read clamav configuration properties.",
7082 "method" : "GET",
7083 "name" : "read_clamav_section",
7084 "parameters" : {
7085 "additionalProperties" : 0
7086 },
732d76e1
DM
7087 "permissions" : {
7088 "check" : [
7089 "admin",
7090 "audit"
7091 ]
7092 },
410dc2c9
DM
7093 "proxyto" : "master",
7094 "returns" : {
7095 "type" : "object"
7096 }
7097 },
7098 "PUT" : {
7099 "description" : "Update clamav configuration properties.",
7100 "method" : "PUT",
7101 "name" : "update_clamav_section",
7102 "parameters" : {
7103 "additionalProperties" : 0,
7104 "properties" : {
7105 "archiveblockencrypted" : {
7106 "default" : 0,
7107 "description" : "Wether to block encrypted archives. Mark encrypted archives as viruses.",
7108 "optional" : 1,
7109 "type" : "boolean",
7110 "typetext" : "<boolean>"
7111 },
7112 "archivemaxfiles" : {
7113 "default" : 1000,
7114 "description" : "Number of files to be scanned within an archive, a document, or any other kind of container. Warning: disabling this limit or setting it too high may result in severe damage to the system.",
7115 "minimum" : 0,
7116 "optional" : 1,
7117 "type" : "integer",
7118 "typetext" : "<integer> (0 - N)"
7119 },
7120 "archivemaxrec" : {
7121 "default" : 5,
7122 "description" : "Nested archives are scanned recursively, e.g. if a ZIP archive contains a TAR file, all files within it will also be scanned. This options specifies how deeply the process should be continued. Warning: setting this limit too high may result in severe damage to the system.",
7123 "minimum" : 1,
7124 "optional" : 1,
7125 "type" : "integer",
7126 "typetext" : "<integer> (1 - N)"
7127 },
7128 "archivemaxsize" : {
7129 "default" : 25000000,
7130 "description" : "Files larger than this limit won't be scanned.",
7131 "minimum" : 1000000,
7132 "optional" : 1,
7133 "type" : "integer",
7134 "typetext" : "<integer> (1000000 - N)"
7135 },
7136 "dbmirror" : {
7137 "default" : "database.clamav.net",
7138 "description" : "ClamAV database mirror server.",
7139 "optional" : 1,
7140 "type" : "string",
7141 "typetext" : "<string>"
7142 },
7143 "delete" : {
7144 "description" : "A list of settings you want to delete.",
7145 "format" : "pve-configid-list",
7146 "maxLength" : 4096,
7147 "optional" : 1,
7148 "type" : "string",
7149 "typetext" : "<string>"
7150 },
7151 "digest" : {
7152 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
7153 "maxLength" : 40,
7154 "optional" : 1,
7155 "type" : "string",
7156 "typetext" : "<string>"
7157 },
7158 "maxcccount" : {
7159 "default" : 0,
7160 "description" : "This option sets the lowest number of Credit Card or Social Security numbers found in a file to generate a detect.",
7161 "minimum" : 0,
7162 "optional" : 1,
7163 "type" : "integer",
7164 "typetext" : "<integer> (0 - N)"
7165 },
7166 "maxscansize" : {
7167 "default" : 100000000,
7168 "description" : "Sets the maximum amount of data to be scanned for each input file.",
7169 "minimum" : 1000000,
7170 "optional" : 1,
7171 "type" : "integer",
7172 "typetext" : "<integer> (1000000 - N)"
f245a28c
DM
7173 },
7174 "safebrowsing" : {
7175 "default" : 1,
7176 "description" : "Enables support for Google Safe Browsing.",
7177 "optional" : 1,
7178 "type" : "boolean",
7179 "typetext" : "<boolean>"
410dc2c9
DM
7180 }
7181 },
7182 "type" : "object"
7183 },
732d76e1
DM
7184 "permissions" : {
7185 "check" : [
7186 "admin"
7187 ]
7188 },
410dc2c9
DM
7189 "protected" : 1,
7190 "proxyto" : "master",
7191 "returns" : {
7192 "type" : "null"
7193 }
7194 }
7195 },
7196 "leaf" : 1,
7197 "path" : "/config/clamav",
7198 "text" : "clamav"
7199 },
7200 {
7201 "info" : {
7202 "GET" : {
7203 "description" : "Read mail configuration properties.",
7204 "method" : "GET",
7205 "name" : "read_mail_section",
7206 "parameters" : {
7207 "additionalProperties" : 0
7208 },
732d76e1
DM
7209 "permissions" : {
7210 "check" : [
7211 "admin",
7212 "audit"
7213 ]
7214 },
410dc2c9
DM
7215 "proxyto" : "master",
7216 "returns" : {
7217 "type" : "object"
7218 }
7219 },
7220 "PUT" : {
7221 "description" : "Update mail configuration properties.",
7222 "method" : "PUT",
7223 "name" : "update_mail_section",
7224 "parameters" : {
7225 "additionalProperties" : 0,
7226 "properties" : {
7227 "banner" : {
7228 "default" : "ESMTP Proxmox",
7229 "description" : "ESMTP banner.",
7230 "maxLength" : 1024,
7231 "optional" : 1,
7232 "type" : "string",
7233 "typetext" : "<string>"
7234 },
7235 "conn_count_limit" : {
7236 "default" : 50,
7237 "description" : "How many simultaneous connections any client is allowed to make to this service. To disable this feature, specify a limit of 0.",
7238 "minimum" : 0,
7239 "optional" : 1,
7240 "type" : "integer",
7241 "typetext" : "<integer> (0 - N)"
7242 },
7243 "conn_rate_limit" : {
7244 "default" : 0,
7245 "description" : "The maximal number of connection attempts any client is allowed to make to this service per minute. To disable this feature, specify a limit of 0.",
7246 "minimum" : 0,
7247 "optional" : 1,
7248 "type" : "integer",
7249 "typetext" : "<integer> (0 - N)"
7250 },
7251 "delete" : {
7252 "description" : "A list of settings you want to delete.",
7253 "format" : "pve-configid-list",
7254 "maxLength" : 4096,
7255 "optional" : 1,
7256 "type" : "string",
7257 "typetext" : "<string>"
7258 },
7259 "digest" : {
7260 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
7261 "maxLength" : 40,
7262 "optional" : 1,
7263 "type" : "string",
7264 "typetext" : "<string>"
7265 },
7266 "dnsbl_sites" : {
7267 "description" : "Optional list of DNS white/blacklist domains (see postscreen_dnsbl_sites parameter).",
274b47fc 7268 "format" : "dnsbl-entry-list",
410dc2c9
DM
7269 "optional" : 1,
7270 "type" : "string",
7271 "typetext" : "<string>"
7272 },
7273 "dwarning" : {
7274 "default" : 4,
7275 "description" : "SMTP delay warning time (in hours).",
7276 "minimum" : 0,
7277 "optional" : 1,
7278 "type" : "integer",
7279 "typetext" : "<integer> (0 - N)"
7280 },
eff914dc
DM
7281 "ext_port" : {
7282 "default" : 26,
7283 "description" : "SMTP port number for incoming mail (untrusted). This must be a different number than 'int_port'.",
7284 "maximum" : 65535,
7285 "minimum" : 1,
7286 "optional" : 1,
7287 "type" : "integer",
7288 "typetext" : "<integer> (1 - 65535)"
7289 },
410dc2c9
DM
7290 "greylist" : {
7291 "default" : 1,
7292 "description" : "Use Greylisting.",
7293 "optional" : 1,
7294 "type" : "boolean",
7295 "typetext" : "<boolean>"
7296 },
7297 "helotests" : {
7298 "default" : 0,
7299 "description" : "Use SMTP HELO tests.",
7300 "optional" : 1,
7301 "type" : "boolean",
7302 "typetext" : "<boolean>"
7303 },
7304 "hide_received" : {
7305 "default" : 0,
7306 "description" : "Hide received header in outgoing mails.",
7307 "optional" : 1,
7308 "type" : "boolean",
7309 "typetext" : "<boolean>"
7310 },
eff914dc
DM
7311 "int_port" : {
7312 "default" : 25,
7313 "description" : "SMTP port number for outgoing mail (trusted).",
7314 "maximum" : 65535,
7315 "minimum" : 1,
7316 "optional" : 1,
7317 "type" : "integer",
7318 "typetext" : "<integer> (1 - 65535)"
7319 },
410dc2c9
DM
7320 "max_filters" : {
7321 "default" : 15,
7322 "description" : "Maximum number of pmg-smtp-filter processes.",
7323 "maximum" : 40,
7324 "minimum" : 3,
7325 "optional" : 1,
7326 "type" : "integer",
7327 "typetext" : "<integer> (3 - 40)"
7328 },
7329 "max_policy" : {
7330 "default" : 5,
7331 "description" : "Maximum number of pmgpolicy processes.",
7332 "maximum" : 10,
7333 "minimum" : 2,
7334 "optional" : 1,
7335 "type" : "integer",
7336 "typetext" : "<integer> (2 - 10)"
7337 },
7338 "max_smtpd_in" : {
7339 "default" : 99,
7340 "description" : "Maximum number of SMTP daemon processes (in).",
7341 "maximum" : 100,
7342 "minimum" : 3,
7343 "optional" : 1,
7344 "type" : "integer",
7345 "typetext" : "<integer> (3 - 100)"
7346 },
7347 "max_smtpd_out" : {
7348 "default" : 99,
7349 "description" : "Maximum number of SMTP daemon processes (out).",
7350 "maximum" : 100,
7351 "minimum" : 3,
7352 "optional" : 1,
7353 "type" : "integer",
7354 "typetext" : "<integer> (3 - 100)"
7355 },
7356 "maxsize" : {
7357 "default" : 10485760,
7358 "description" : "Maximum email size. Larger mails are rejected.",
7359 "minimum" : 1024,
7360 "optional" : 1,
7361 "type" : "integer",
7362 "typetext" : "<integer> (1024 - N)"
7363 },
7364 "message_rate_limit" : {
7365 "default" : 0,
7366 "description" : "The maximal number of message delivery requests that any client is allowed to make to this service per minute.To disable this feature, specify a limit of 0.",
7367 "minimum" : 0,
7368 "optional" : 1,
7369 "type" : "integer",
7370 "typetext" : "<integer> (0 - N)"
7371 },
7372 "rejectunknown" : {
7373 "default" : 0,
7374 "description" : "Reject unknown clients.",
7375 "optional" : 1,
7376 "type" : "boolean",
7377 "typetext" : "<boolean>"
7378 },
7379 "rejectunknownsender" : {
7380 "default" : 0,
7381 "description" : "Reject unknown senders.",
7382 "optional" : 1,
7383 "type" : "boolean",
7384 "typetext" : "<boolean>"
7385 },
7386 "relay" : {
7387 "description" : "The default mail delivery transport (incoming mails).",
eff914dc 7388 "format" : "address",
410dc2c9
DM
7389 "optional" : 1,
7390 "type" : "string",
7391 "typetext" : "<string>"
7392 },
7393 "relaynomx" : {
7394 "default" : 0,
7395 "description" : "Disable MX lookups for default relay.",
7396 "optional" : 1,
7397 "type" : "boolean",
7398 "typetext" : "<boolean>"
7399 },
7400 "relayport" : {
7401 "default" : 25,
7402 "description" : "SMTP port number for relay host.",
7403 "maximum" : 65535,
7404 "minimum" : 1,
7405 "optional" : 1,
7406 "type" : "integer",
7407 "typetext" : "<integer> (1 - 65535)"
7408 },
eff914dc
DM
7409 "smarthost" : {
7410 "description" : "When set, all outgoing mails are deliverd to the specified smarthost.",
7411 "format" : "address",
7412 "optional" : 1,
7413 "type" : "string",
7414 "typetext" : "<string>"
7415 },
410dc2c9
DM
7416 "spf" : {
7417 "default" : 1,
7418 "description" : "Use Sender Policy Framework.",
7419 "optional" : 1,
7420 "type" : "boolean",
7421 "typetext" : "<boolean>"
7422 },
7423 "tls" : {
7424 "default" : 0,
eff914dc
DM
7425 "description" : "Enable TLS.",
7426 "optional" : 1,
7427 "type" : "boolean",
7428 "typetext" : "<boolean>"
7429 },
7430 "tlsheader" : {
7431 "default" : 0,
7432 "description" : "Add TLS received header.",
7433 "optional" : 1,
7434 "type" : "boolean",
7435 "typetext" : "<boolean>"
7436 },
7437 "tlslog" : {
7438 "default" : 0,
7439 "description" : "Enable TLS Logging.",
410dc2c9
DM
7440 "optional" : 1,
7441 "type" : "boolean",
7442 "typetext" : "<boolean>"
7443 },
410dc2c9 7444 "verifyreceivers" : {
eff914dc
DM
7445 "description" : "Enable receiver verification. The value spefifies the numerical reply code when the Postfix SMTP server rejects a recipient address.",
7446 "enum" : [
7447 "450",
7448 "550"
7449 ],
410dc2c9 7450 "optional" : 1,
eff914dc 7451 "type" : "string"
410dc2c9
DM
7452 }
7453 },
7454 "type" : "object"
7455 },
732d76e1
DM
7456 "permissions" : {
7457 "check" : [
7458 "admin"
7459 ]
7460 },
410dc2c9
DM
7461 "protected" : 1,
7462 "proxyto" : "master",
7463 "returns" : {
7464 "type" : "null"
7465 }
7466 }
7467 },
7468 "leaf" : 1,
7469 "path" : "/config/mail",
7470 "text" : "mail"
7471 },
7472 {
7473 "info" : {
7474 "GET" : {
7475 "description" : "Read spam configuration properties.",
7476 "method" : "GET",
7477 "name" : "read_spam_section",
7478 "parameters" : {
7479 "additionalProperties" : 0
7480 },
732d76e1
DM
7481 "permissions" : {
7482 "check" : [
7483 "admin",
7484 "audit"
7485 ]
7486 },
410dc2c9
DM
7487 "proxyto" : "master",
7488 "returns" : {
7489 "type" : "object"
7490 }
7491 },
7492 "PUT" : {
7493 "description" : "Update spam configuration properties.",
7494 "method" : "PUT",
7495 "name" : "update_spam_section",
7496 "parameters" : {
7497 "additionalProperties" : 0,
7498 "properties" : {
7499 "bounce_score" : {
7500 "default" : 0,
7501 "description" : "Additional score for bounce mails.",
7502 "maximum" : 1000,
7503 "minimum" : 0,
7504 "optional" : 1,
7505 "type" : "integer",
7506 "typetext" : "<integer> (0 - 1000)"
7507 },
274b47fc
DM
7508 "clamav_heuristic_score" : {
7509 "default" : 3,
7510 "description" : "Score for ClamaAV heuristics (Google Safe Browsing database, PhishingScanURLs, ...).",
7511 "maximum" : 1000,
7512 "minimum" : 0,
7513 "optional" : 1,
7514 "type" : "integer",
7515 "typetext" : "<integer> (0 - 1000)"
7516 },
410dc2c9
DM
7517 "delete" : {
7518 "description" : "A list of settings you want to delete.",
7519 "format" : "pve-configid-list",
7520 "maxLength" : 4096,
7521 "optional" : 1,
7522 "type" : "string",
7523 "typetext" : "<string>"
7524 },
7525 "digest" : {
7526 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
7527 "maxLength" : 40,
7528 "optional" : 1,
7529 "type" : "string",
7530 "typetext" : "<string>"
7531 },
7532 "languages" : {
7533 "default" : "all",
7534 "description" : "This option is used to specify which languages are considered OK for incoming mail.",
7535 "optional" : 1,
7536 "pattern" : "(all|([a-z][a-z])+( ([a-z][a-z])+)*)",
7537 "type" : "string"
7538 },
7539 "maxspamsize" : {
274b47fc 7540 "default" : 262144,
410dc2c9
DM
7541 "description" : "Maximum size of spam messages in bytes.",
7542 "minimum" : 64,
7543 "optional" : 1,
7544 "type" : "integer",
7545 "typetext" : "<integer> (64 - N)"
7546 },
7547 "rbl_checks" : {
7548 "default" : 1,
7549 "description" : "Enable real time blacklists (RBL) checks.",
7550 "optional" : 1,
7551 "type" : "boolean",
7552 "typetext" : "<boolean>"
7553 },
7554 "use_awl" : {
7555 "default" : 1,
7556 "description" : "Use the Auto-Whitelist plugin.",
7557 "optional" : 1,
7558 "type" : "boolean",
7559 "typetext" : "<boolean>"
7560 },
7561 "use_bayes" : {
7562 "default" : 1,
7563 "description" : "Whether to use the naive-Bayesian-style classifier.",
7564 "optional" : 1,
7565 "type" : "boolean",
7566 "typetext" : "<boolean>"
7567 },
410dc2c9
DM
7568 "use_razor" : {
7569 "default" : 1,
7570 "description" : "Whether to use Razor2, if it is available.",
7571 "optional" : 1,
7572 "type" : "boolean",
7573 "typetext" : "<boolean>"
7574 },
7575 "wl_bounce_relays" : {
7576 "description" : "Whitelist legitimate bounce relays.",
7577 "optional" : 1,
7578 "type" : "string",
7579 "typetext" : "<string>"
7580 }
7581 },
7582 "type" : "object"
7583 },
732d76e1
DM
7584 "permissions" : {
7585 "check" : [
7586 "admin"
7587 ]
7588 },
410dc2c9
DM
7589 "protected" : 1,
7590 "proxyto" : "master",
7591 "returns" : {
7592 "type" : "null"
7593 }
7594 }
7595 },
7596 "leaf" : 1,
7597 "path" : "/config/spam",
7598 "text" : "spam"
f245a28c
DM
7599 },
7600 {
7601 "info" : {
7602 "GET" : {
7603 "description" : "Read spamquar configuration properties.",
7604 "method" : "GET",
7605 "name" : "read_spamquar_section",
7606 "parameters" : {
7607 "additionalProperties" : 0
7608 },
732d76e1
DM
7609 "permissions" : {
7610 "check" : [
7611 "admin",
7612 "audit"
7613 ]
7614 },
f245a28c
DM
7615 "proxyto" : "master",
7616 "returns" : {
7617 "type" : "object"
7618 }
7619 },
7620 "PUT" : {
7621 "description" : "Update spamquar configuration properties.",
7622 "method" : "PUT",
7623 "name" : "update_spamquar_section",
7624 "parameters" : {
7625 "additionalProperties" : 0,
7626 "properties" : {
7627 "allowhrefs" : {
7628 "default" : 1,
7629 "description" : "Allow to view hyperlinks.",
7630 "optional" : 1,
7631 "type" : "boolean",
7632 "typetext" : "<boolean>"
7633 },
7634 "authmode" : {
7635 "default" : "ticket",
7636 "description" : "Authentication mode to access the quarantine interface. Mode 'ticket' allows login using tickets sent with the daily spam report. Mode 'ldap' requires to login using an LDAP account. Finally, mode 'ldapticket' allows both ways.",
7637 "enum" : [
7638 "ticket",
7639 "ldap",
7640 "ldapticket"
7641 ],
7642 "optional" : 1,
7643 "type" : "string"
7644 },
7645 "delete" : {
7646 "description" : "A list of settings you want to delete.",
7647 "format" : "pve-configid-list",
7648 "maxLength" : 4096,
7649 "optional" : 1,
7650 "type" : "string",
7651 "typetext" : "<string>"
7652 },
7653 "digest" : {
7654 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
7655 "maxLength" : 40,
7656 "optional" : 1,
7657 "type" : "string",
7658 "typetext" : "<string>"
7659 },
7660 "hostname" : {
7661 "description" : "Quarantine Host. Usefule if you run a Cluster and want users to connect to a specific host.",
7662 "format" : "address",
7663 "optional" : 1,
7664 "type" : "string",
7665 "typetext" : "<string>"
7666 },
7667 "lifetime" : {
7668 "default" : 7,
7669 "description" : "Quarantine life time (days)",
7670 "minimum" : 1,
7671 "optional" : 1,
7672 "type" : "integer",
7673 "typetext" : "<integer> (1 - N)"
7674 },
7675 "mailfrom" : {
7676 "description" : "Text for 'From' header in daily spam report mails.",
7677 "optional" : 1,
7678 "type" : "string",
7679 "typetext" : "<string>"
7680 },
7681 "reportstyle" : {
7682 "default" : "verbose",
7683 "description" : "Spam report style.",
7684 "enum" : [
7685 "none",
7686 "short",
7687 "verbose",
f245a28c
DM
7688 "custom"
7689 ],
7690 "optional" : 1,
7691 "type" : "string"
7692 },
a55e94a6
DM
7693 "viewimages" : {
7694 "default" : 1,
7695 "description" : "Allow to view images.",
7696 "optional" : 1,
7697 "type" : "boolean",
7698 "typetext" : "<boolean>"
7699 }
7700 },
7701 "type" : "object"
7702 },
732d76e1
DM
7703 "permissions" : {
7704 "check" : [
7705 "admin"
7706 ]
7707 },
a55e94a6
DM
7708 "protected" : 1,
7709 "proxyto" : "master",
7710 "returns" : {
7711 "type" : "null"
7712 }
7713 }
7714 },
7715 "leaf" : 1,
7716 "path" : "/config/spamquar",
7717 "text" : "spamquar"
7718 },
7719 {
7720 "info" : {
7721 "GET" : {
7722 "description" : "Read virusquar configuration properties.",
7723 "method" : "GET",
7724 "name" : "read_virusquar_section",
7725 "parameters" : {
7726 "additionalProperties" : 0
7727 },
732d76e1
DM
7728 "permissions" : {
7729 "check" : [
7730 "admin",
7731 "audit"
7732 ]
7733 },
a55e94a6
DM
7734 "proxyto" : "master",
7735 "returns" : {
7736 "type" : "object"
7737 }
7738 },
7739 "PUT" : {
7740 "description" : "Update virusquar configuration properties.",
7741 "method" : "PUT",
7742 "name" : "update_virusquar_section",
7743 "parameters" : {
7744 "additionalProperties" : 0,
7745 "properties" : {
7746 "allowhrefs" : {
7747 "default" : 1,
7748 "description" : "Allow to view hyperlinks.",
7749 "optional" : 1,
7750 "type" : "boolean",
7751 "typetext" : "<boolean>"
7752 },
7753 "delete" : {
7754 "description" : "A list of settings you want to delete.",
7755 "format" : "pve-configid-list",
7756 "maxLength" : 4096,
7757 "optional" : 1,
7758 "type" : "string",
7759 "typetext" : "<string>"
7760 },
7761 "digest" : {
7762 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
7763 "maxLength" : 40,
7764 "optional" : 1,
7765 "type" : "string",
7766 "typetext" : "<string>"
7767 },
7768 "lifetime" : {
7769 "default" : 7,
7770 "description" : "Quarantine life time (days)",
7771 "minimum" : 1,
7772 "optional" : 1,
7773 "type" : "integer",
7774 "typetext" : "<integer> (1 - N)"
7775 },
7776 "viewimages" : {
7777 "default" : 1,
7778 "description" : "Allow to view images.",
7779 "optional" : 1,
7780 "type" : "boolean",
7781 "typetext" : "<boolean>"
7782 }
7783 },
7784 "type" : "object"
7785 },
732d76e1
DM
7786 "permissions" : {
7787 "check" : [
7788 "admin"
7789 ]
7790 },
a55e94a6
DM
7791 "protected" : 1,
7792 "proxyto" : "master",
7793 "returns" : {
7794 "type" : "null"
7795 }
7796 }
7797 },
7798 "leaf" : 1,
7799 "path" : "/config/virusquar",
7800 "text" : "virusquar"
9fda36b0
DM
7801 },
7802 {
7803 "info" : {
7804 "POST" : {
7805 "description" : "Test Regex",
7806 "method" : "POST",
7807 "name" : "regextest",
7808 "parameters" : {
7809 "additionalProperties" : 0,
7810 "properties" : {
7811 "regex" : {
7812 "description" : "The Regex to test",
7813 "maxLength" : 1024,
7814 "type" : "string",
7815 "typetext" : "<string>"
7816 },
7817 "text" : {
7818 "description" : "The String to test",
7819 "maxLength" : 1024,
7820 "type" : "string",
7821 "typetext" : "<string>"
7822 }
7823 }
7824 },
7825 "permissions" : {
7826 "check" : [
7827 "admin",
7828 "qmanager",
7829 "audit"
7830 ]
7831 },
7832 "protected" : 0,
7833 "returns" : {
7834 "type" : "number"
7835 }
7836 }
7837 },
7838 "leaf" : 1,
7839 "path" : "/config/regextest",
7840 "text" : "regextest"
a55e94a6
DM
7841 }
7842 ],
7843 "info" : {
7844 "GET" : {
7845 "description" : "Directory index.",
7846 "method" : "GET",
7847 "name" : "index",
7848 "parameters" : {
7849 "additionalProperties" : 0
7850 },
7851 "returns" : {
7852 "items" : {
7853 "properties" : {
7854 "section" : {
7855 "type" : "string"
7856 }
7857 },
7858 "type" : "object"
7859 },
7860 "links" : [
7861 {
7862 "href" : "{section}",
7863 "rel" : "child"
7864 }
7865 ],
7866 "type" : "array"
7867 }
7868 }
7869 },
7870 "leaf" : 0,
7871 "path" : "/config",
7872 "text" : "config"
7873 },
7874 {
7875 "children" : [
7876 {
7877 "children" : [
7878 {
7879 "children" : [
7880 {
7881 "info" : {
7882 "GET" : {
7883 "description" : "Print Postfix queue domain and age distribution.",
7884 "method" : "GET",
7885 "name" : "qshape",
7886 "parameters" : {
7887 "additionalProperties" : 0,
7888 "properties" : {
7889 "node" : {
7890 "description" : "The cluster node name.",
7891 "format" : "pve-node",
7892 "type" : "string",
7893 "typetext" : "<string>"
7894 },
7895 "queue" : {
7896 "default" : "deferred",
7897 "description" : "Postfix queue name.",
7898 "enum" : [
7899 "deferred",
7900 "active",
7901 "incoming",
7902 "hold"
7903 ],
7904 "optional" : 1,
7905 "type" : "string"
7906 }
7907 }
7908 },
7909 "permissions" : {
7910 "check" : [
732d76e1
DM
7911 "admin",
7912 "audit"
a55e94a6
DM
7913 ]
7914 },
7915 "protected" : 1,
7916 "proxyto" : "node",
7917 "returns" : {
7918 "items" : {
7919 "properties" : {},
7920 "type" : "object"
7921 },
7922 "type" : "array"
7923 }
7924 }
7925 },
7926 "leaf" : 1,
7927 "path" : "/nodes/{node}/postfix/qshape",
7928 "text" : "qshape"
7929 },
7930 {
7931 "children" : [
7932 {
7933 "children" : [
7934 {
7935 "info" : {
7936 "DELETE" : {
7937 "description" : "Delete one message with the named queue ID.",
7938 "method" : "DELETE",
7939 "name" : "delete_queued_mail",
7940 "parameters" : {
7941 "additionalProperties" : 0,
7942 "properties" : {
7943 "node" : {
7944 "description" : "The cluster node name.",
7945 "format" : "pve-node",
7946 "type" : "string",
7947 "typetext" : "<string>"
7948 },
7949 "queue" : {
7950 "description" : "Postfix queue name.",
7951 "enum" : [
7952 "deferred",
7953 "active",
7954 "incoming",
7955 "hold"
7956 ],
7957 "type" : "string"
7958 },
7959 "queue_id" : {
7960 "description" : "The Message queue ID.",
7961 "maxLength" : 20,
7962 "minLength" : 8,
7963 "pattern" : "[a-zA-Z0-9]+",
7964 "type" : "string"
7965 }
7966 }
7967 },
7968 "permissions" : {
7969 "check" : [
7970 "admin"
7971 ]
7972 },
7973 "protected" : 1,
7974 "proxyto" : "node",
7975 "returns" : {
7976 "type" : "null"
7977 }
7978 },
7979 "GET" : {
7980 "description" : "Get the contents of a queued mail.",
7981 "method" : "GET",
7982 "name" : "read_queued_mail",
7983 "parameters" : {
7984 "additionalProperties" : 0,
7985 "properties" : {
7986 "body" : {
7987 "default" : 0,
7988 "description" : "Include body content.",
7989 "optional" : 1,
7990 "type" : "boolean",
7991 "typetext" : "<boolean>"
7992 },
7993 "header" : {
7994 "default" : 1,
7995 "description" : "Show message header content.",
7996 "optional" : 1,
7997 "type" : "boolean",
7998 "typetext" : "<boolean>"
7999 },
8000 "node" : {
8001 "description" : "The cluster node name.",
8002 "format" : "pve-node",
8003 "type" : "string",
8004 "typetext" : "<string>"
8005 },
8006 "queue" : {
8007 "description" : "Postfix queue name.",
8008 "enum" : [
8009 "deferred",
8010 "active",
8011 "incoming",
8012 "hold"
8013 ],
8014 "type" : "string"
8015 },
8016 "queue_id" : {
8017 "description" : "The Message queue ID.",
8018 "maxLength" : 20,
8019 "minLength" : 8,
8020 "pattern" : "[a-zA-Z0-9]+",
8021 "type" : "string"
8022 }
8023 }
8024 },
8025 "permissions" : {
8026 "check" : [
8027 "admin"
8028 ]
8029 },
8030 "protected" : 1,
8031 "proxyto" : "node",
8032 "returns" : {
8033 "type" : "string"
8034 }
8035 },
8036 "POST" : {
8037 "description" : "Schedule immediate delivery of deferred mail with the specified queue ID.",
8038 "method" : "POST",
8039 "name" : "flush_queued_mail",
8040 "parameters" : {
8041 "additionalProperties" : 0,
8042 "properties" : {
8043 "node" : {
8044 "description" : "The cluster node name.",
8045 "format" : "pve-node",
8046 "type" : "string",
8047 "typetext" : "<string>"
8048 },
8049 "queue" : {
8050 "description" : "Postfix queue name.",
8051 "enum" : [
8052 "deferred",
8053 "active",
8054 "incoming",
8055 "hold"
8056 ],
8057 "type" : "string"
8058 },
8059 "queue_id" : {
8060 "description" : "The Message queue ID.",
8061 "maxLength" : 20,
8062 "minLength" : 8,
8063 "pattern" : "[a-zA-Z0-9]+",
8064 "type" : "string"
8065 }
8066 }
8067 },
8068 "permissions" : {
8069 "check" : [
8070 "admin"
8071 ]
8072 },
8073 "protected" : 1,
8074 "proxyto" : "node",
8075 "returns" : {
8076 "type" : "null"
8077 }
8078 }
8079 },
8080 "leaf" : 1,
8081 "path" : "/nodes/{node}/postfix/queue/{queue}/{queue_id}",
8082 "text" : "{queue_id}"
8083 }
8084 ],
8085 "info" : {
8086 "DELETE" : {
8087 "description" : "Delete all mails in the queue.",
8088 "method" : "DELETE",
8089 "name" : "delete_queue",
8090 "parameters" : {
8091 "additionalProperties" : 0,
8092 "properties" : {
8093 "node" : {
8094 "description" : "The cluster node name.",
8095 "format" : "pve-node",
8096 "type" : "string",
8097 "typetext" : "<string>"
8098 },
8099 "queue" : {
8100 "description" : "Postfix queue name.",
8101 "enum" : [
8102 "deferred",
8103 "active",
8104 "incoming",
8105 "hold"
8106 ],
8107 "type" : "string"
8108 }
8109 }
8110 },
8111 "permissions" : {
8112 "check" : [
8113 "admin"
8114 ]
8115 },
8116 "protected" : 1,
8117 "proxyto" : "node",
8118 "returns" : {
8119 "type" : "null"
8120 }
8121 },
8122 "GET" : {
8123 "description" : "List the mail queue for a specific domain.",
8124 "method" : "GET",
8125 "name" : "mailq",
8126 "parameters" : {
8127 "additionalProperties" : 0,
8128 "properties" : {
8129 "filter" : {
8130 "description" : "Filter string.",
8131 "maxLength" : 64,
8132 "optional" : 1,
8133 "type" : "string",
8134 "typetext" : "<string>"
8135 },
8136 "limit" : {
8137 "minimum" : 0,
8138 "optional" : 1,
8139 "type" : "integer",
8140 "typetext" : "<integer> (0 - N)"
8141 },
8142 "node" : {
8143 "description" : "The cluster node name.",
8144 "format" : "pve-node",
8145 "type" : "string",
8146 "typetext" : "<string>"
8147 },
8148 "queue" : {
8149 "description" : "Postfix queue name.",
8150 "enum" : [
8151 "deferred",
8152 "active",
8153 "incoming",
8154 "hold"
8155 ],
8156 "type" : "string"
8157 },
8158 "start" : {
8159 "minimum" : 0,
8160 "optional" : 1,
8161 "type" : "integer",
8162 "typetext" : "<integer> (0 - N)"
8163 }
8164 }
8165 },
8166 "permissions" : {
8167 "check" : [
732d76e1
DM
8168 "admin",
8169 "audit"
a55e94a6
DM
8170 ]
8171 },
8172 "protected" : 1,
8173 "proxyto" : "node",
8174 "returns" : {
8175 "items" : {
8176 "properties" : {},
8177 "type" : "object"
8178 },
8179 "links" : [
8180 {
8181 "href" : "{queue_id}",
8182 "rel" : "child"
8183 }
8184 ],
8185 "type" : "array"
8186 }
8187 }
8188 },
8189 "leaf" : 0,
8190 "path" : "/nodes/{node}/postfix/queue/{queue}",
8191 "text" : "{queue}"
8192 }
8193 ],
8194 "info" : {
9fda36b0
DM
8195 "DELETE" : {
8196 "description" : "Delete all mails in all posfix queues.",
8197 "method" : "DELETE",
8198 "name" : "delete_all_queues",
8199 "parameters" : {
8200 "additionalProperties" : 0,
8201 "properties" : {
8202 "node" : {
8203 "description" : "The cluster node name.",
8204 "format" : "pve-node",
8205 "type" : "string",
8206 "typetext" : "<string>"
8207 }
8208 }
8209 },
8210 "permissions" : {
8211 "check" : [
8212 "admin"
8213 ]
8214 },
8215 "protected" : 1,
8216 "proxyto" : "node",
8217 "returns" : {
8218 "type" : "null"
8219 }
8220 },
a55e94a6
DM
8221 "GET" : {
8222 "description" : "Directory index.",
8223 "method" : "GET",
8224 "name" : "queue_index",
8225 "parameters" : {
8226 "additionalProperties" : 0,
8227 "properties" : {
8228 "node" : {
8229 "description" : "The cluster node name.",
8230 "format" : "pve-node",
8231 "type" : "string",
8232 "typetext" : "<string>"
8233 }
8234 }
8235 },
8236 "permissions" : {
8237 "user" : "all"
8238 },
8239 "returns" : {
8240 "items" : {
8241 "properties" : {},
8242 "type" : "object"
8243 },
8244 "links" : [
8245 {
8246 "href" : "{name}",
8247 "rel" : "child"
8248 }
8249 ],
8250 "type" : "array"
8251 }
8252 }
8253 },
8254 "leaf" : 0,
8255 "path" : "/nodes/{node}/postfix/queue",
8256 "text" : "queue"
f245a28c 8257 },
a55e94a6
DM
8258 {
8259 "info" : {
8260 "POST" : {
8261 "description" : "Flush the queue: attempt to deliver all queued mail.",
8262 "method" : "POST",
8263 "name" : "flush_queues",
8264 "parameters" : {
8265 "additionalProperties" : 0,
8266 "properties" : {
8267 "node" : {
8268 "description" : "The cluster node name.",
8269 "format" : "pve-node",
8270 "type" : "string",
8271 "typetext" : "<string>"
8272 }
8273 }
8274 },
8275 "permissions" : {
8276 "check" : [
8277 "admin"
8278 ]
8279 },
8280 "protected" : 1,
8281 "proxyto" : "node",
8282 "returns" : {
8283 "type" : "null"
8284 }
8285 }
f245a28c 8286 },
a55e94a6
DM
8287 "leaf" : 1,
8288 "path" : "/nodes/{node}/postfix/flush_queues",
8289 "text" : "flush_queues"
8290 },
8291 {
8292 "info" : {
8293 "POST" : {
8294 "description" : "Discards the address verification cache.",
8295 "method" : "POST",
8296 "name" : "discard_verify_cache",
8297 "parameters" : {
8298 "additionalProperties" : 0,
8299 "properties" : {
8300 "node" : {
8301 "description" : "The cluster node name.",
8302 "format" : "pve-node",
8303 "type" : "string",
8304 "typetext" : "<string>"
8305 }
8306 }
8307 },
8308 "permissions" : {
8309 "check" : [
8310 "admin"
8311 ]
8312 },
8313 "protected" : 1,
8314 "proxyto" : "node",
8315 "returns" : {
8316 "type" : "null"
8317 }
8318 }
f245a28c 8319 },
a55e94a6
DM
8320 "leaf" : 1,
8321 "path" : "/nodes/{node}/postfix/discard_verify_cache",
8322 "text" : "discard_verify_cache"
8323 }
8324 ],
8325 "info" : {
8326 "GET" : {
8327 "description" : "Directory index.",
8328 "method" : "GET",
8329 "name" : "index",
8330 "parameters" : {
8331 "additionalProperties" : 0,
8332 "properties" : {
8333 "node" : {
8334 "description" : "The cluster node name.",
8335 "format" : "pve-node",
8336 "type" : "string",
8337 "typetext" : "<string>"
8338 }
8339 }
f245a28c 8340 },
a55e94a6
DM
8341 "permissions" : {
8342 "user" : "all"
f245a28c 8343 },
a55e94a6
DM
8344 "returns" : {
8345 "items" : {
8346 "properties" : {},
8347 "type" : "object"
8348 },
8349 "links" : [
8350 {
8351 "href" : "{name}",
8352 "rel" : "child"
8353 }
8354 ],
8355 "type" : "array"
f245a28c 8356 }
410dc2c9
DM
8357 }
8358 },
a55e94a6
DM
8359 "leaf" : 0,
8360 "path" : "/nodes/{node}/postfix",
8361 "text" : "postfix"
410dc2c9 8362 },
f245a28c
DM
8363 {
8364 "children" : [
8365 {
8366 "info" : {
8367 "GET" : {
8368 "description" : "ClamAV virus database status.",
8369 "method" : "GET",
8370 "name" : "database_status",
8371 "parameters" : {
8372 "additionalProperties" : 0,
8373 "properties" : {
8374 "node" : {
8375 "description" : "The cluster node name.",
8376 "format" : "pve-node",
8377 "type" : "string",
8378 "typetext" : "<string>"
8379 }
8380 }
8381 },
bb6e6e0d
DM
8382 "permissions" : {
8383 "check" : [
8384 "admin",
8385 "audit"
8386 ]
8387 },
8388 "proxyto" : "node",
f245a28c
DM
8389 "returns" : {
8390 "items" : {
8391 "properties" : {
8392 "build_time" : {
8393 "type" : "string"
8394 },
8395 "nsigs" : {
8396 "type" : "integer"
8397 },
8398 "type" : {
8399 "type" : "string"
8400 },
8401 "version" : {
8402 "optional" : 1,
8403 "type" : "string"
8404 }
8405 },
8406 "type" : "object"
8407 },
8408 "type" : "array"
8409 }
8410 },
8411 "POST" : {
8412 "description" : "Update ClamAV virus databases.",
8413 "method" : "POST",
8414 "name" : "update_database",
8415 "parameters" : {
8416 "additionalProperties" : 0,
8417 "properties" : {
8418 "node" : {
8419 "description" : "The cluster node name.",
8420 "format" : "pve-node",
8421 "type" : "string",
8422 "typetext" : "<string>"
8423 }
8424 }
8425 },
bb6e6e0d
DM
8426 "permissions" : {
8427 "check" : [
8428 "admin"
8429 ]
8430 },
f245a28c 8431 "protected" : 1,
bb6e6e0d 8432 "proxyto" : "node",
f245a28c
DM
8433 "returns" : {
8434 "type" : "string"
8435 }
8436 }
8437 },
8438 "leaf" : 1,
8439 "path" : "/nodes/{node}/clamav/database",
8440 "text" : "database"
8441 }
8442 ],
8443 "info" : {
8444 "GET" : {
8445 "description" : "Directory index.",
8446 "method" : "GET",
8447 "name" : "index",
8448 "parameters" : {
8449 "additionalProperties" : 0,
8450 "properties" : {
8451 "node" : {
8452 "description" : "The cluster node name.",
8453 "format" : "pve-node",
8454 "type" : "string",
8455 "typetext" : "<string>"
8456 }
8457 }
8458 },
bb6e6e0d
DM
8459 "permissions" : {
8460 "check" : [
8461 "admin",
8462 "audit"
8463 ]
8464 },
f245a28c
DM
8465 "returns" : {
8466 "items" : {
8467 "properties" : {},
8468 "type" : "object"
8469 },
8470 "links" : [
8471 {
8472 "href" : "{subdir}",
8473 "rel" : "child"
8474 }
8475 ],
8476 "type" : "array"
8477 }
8478 }
8479 },
8480 "leaf" : 0,
8481 "path" : "/nodes/{node}/clamav",
8482 "text" : "clamav"
8483 },
bb6e6e0d
DM
8484 {
8485 "children" : [
8486 {
8487 "info" : {
8488 "GET" : {
8489 "description" : "SpamAssassin rules status.",
8490 "method" : "GET",
8491 "name" : "rules_status",
8492 "parameters" : {
8493 "additionalProperties" : 0,
8494 "properties" : {
8495 "node" : {
8496 "description" : "The cluster node name.",
8497 "format" : "pve-node",
8498 "type" : "string",
8499 "typetext" : "<string>"
8500 }
8501 }
8502 },
8503 "permissions" : {
8504 "check" : [
8505 "admin",
8506 "audit"
8507 ]
8508 },
8509 "proxyto" : "node",
8510 "returns" : {
8511 "items" : {
8512 "properties" : {
8513 "channel" : {
8514 "type" : "string"
8515 },
8516 "last_updated" : {
8517 "optional" : 1,
8518 "type" : "integer"
8519 },
8520 "update_avail" : {
8521 "type" : "boolean"
8522 },
8523 "update_version" : {
8524 "optional" : 1,
8525 "type" : "string"
8526 },
8527 "version" : {
8528 "optional" : 1,
8529 "type" : "string"
8530 }
8531 },
8532 "type" : "object"
8533 },
8534 "type" : "array"
8535 }
8536 },
8537 "POST" : {
8538 "description" : "Update SpamAssassin rules.",
8539 "method" : "POST",
8540 "name" : "update_rules",
8541 "parameters" : {
8542 "additionalProperties" : 0,
8543 "properties" : {
8544 "node" : {
8545 "description" : "The cluster node name.",
8546 "format" : "pve-node",
8547 "type" : "string",
8548 "typetext" : "<string>"
8549 }
8550 }
8551 },
8552 "permissions" : {
8553 "check" : [
8554 "admin"
8555 ]
8556 },
8557 "protected" : 1,
8558 "proxyto" : "node",
8559 "returns" : {
8560 "type" : "string"
8561 }
8562 }
8563 },
8564 "leaf" : 1,
8565 "path" : "/nodes/{node}/spamassassin/rules",
8566 "text" : "rules"
8567 }
8568 ],
8569 "info" : {
8570 "GET" : {
8571 "description" : "Directory index.",
8572 "method" : "GET",
8573 "name" : "index",
8574 "parameters" : {
8575 "additionalProperties" : 0,
8576 "properties" : {
8577 "node" : {
8578 "description" : "The cluster node name.",
8579 "format" : "pve-node",
8580 "type" : "string",
8581 "typetext" : "<string>"
8582 }
8583 }
8584 },
8585 "permissions" : {
8586 "check" : [
8587 "admin",
8588 "audit"
8589 ]
8590 },
8591 "returns" : {
8592 "items" : {
8593 "properties" : {},
8594 "type" : "object"
8595 },
8596 "links" : [
8597 {
8598 "href" : "{subdir}",
8599 "rel" : "child"
8600 }
8601 ],
8602 "type" : "array"
8603 }
8604 }
8605 },
8606 "leaf" : 0,
8607 "path" : "/nodes/{node}/spamassassin",
8608 "text" : "spamassassin"
8609 },
410dc2c9
DM
8610 {
8611 "children" : [
8612 {
8613 "info" : {
8614 "DELETE" : {
8615 "description" : "Delete network device configuration",
8616 "method" : "DELETE",
8617 "name" : "delete_network",
8618 "parameters" : {
8619 "additionalProperties" : 0,
8620 "properties" : {
8621 "iface" : {
8622 "description" : "Network interface name.",
8623 "format" : "pve-iface",
8624 "maxLength" : 20,
8625 "minLength" : 2,
8626 "type" : "string",
8627 "typetext" : "<string>"
8628 },
8629 "node" : {
8630 "description" : "The cluster node name.",
8631 "format" : "pve-node",
8632 "type" : "string",
8633 "typetext" : "<string>"
8634 }
8635 }
8636 },
8637 "protected" : 1,
8638 "proxyto" : "node",
8639 "returns" : {
8640 "type" : "null"
8641 }
8642 },
8643 "GET" : {
8644 "description" : "Read network device configuration",
8645 "method" : "GET",
8646 "name" : "network_config",
8647 "parameters" : {
8648 "additionalProperties" : 0,
8649 "properties" : {
8650 "iface" : {
8651 "description" : "Network interface name.",
8652 "format" : "pve-iface",
8653 "maxLength" : 20,
8654 "minLength" : 2,
8655 "type" : "string",
8656 "typetext" : "<string>"
8657 },
8658 "node" : {
8659 "description" : "The cluster node name.",
8660 "format" : "pve-node",
8661 "type" : "string",
8662 "typetext" : "<string>"
8663 }
8664 }
8665 },
732d76e1
DM
8666 "permissions" : {
8667 "check" : [
8668 "admin",
8669 "audit"
8670 ]
8671 },
410dc2c9
DM
8672 "proxyto" : "node",
8673 "returns" : {
8674 "properties" : {
8675 "method" : {
8676 "type" : "string"
8677 },
8678 "type" : {
8679 "type" : "string"
8680 }
8681 },
8682 "type" : "object"
8683 }
8684 },
8685 "PUT" : {
8686 "description" : "Update network device configuration",
8687 "method" : "PUT",
8688 "name" : "update_network",
8689 "parameters" : {
8690 "additionalProperties" : 0,
8691 "properties" : {
8692 "address" : {
8693 "description" : "IP address.",
8694 "format" : "ipv4",
8695 "optional" : 1,
8696 "requires" : "netmask",
8697 "type" : "string",
8698 "typetext" : "<string>"
8699 },
8700 "address6" : {
8701 "description" : "IP address.",
8702 "format" : "ipv6",
8703 "optional" : 1,
8704 "requires" : "netmask6",
8705 "type" : "string",
8706 "typetext" : "<string>"
8707 },
8708 "autostart" : {
8709 "description" : "Automatically start interface on boot.",
8710 "optional" : 1,
8711 "type" : "boolean",
8712 "typetext" : "<boolean>"
8713 },
8714 "bond_mode" : {
8715 "description" : "Bonding mode.",
8716 "enum" : [
8717 "balance-rr",
8718 "active-backup",
8719 "balance-xor",
8720 "broadcast",
8721 "802.3ad",
8722 "balance-tlb",
8723 "balance-alb",
8724 "balance-slb",
8725 "lacp-balance-slb",
8726 "lacp-balance-tcp"
8727 ],
8728 "optional" : 1,
8729 "type" : "string"
8730 },
8731 "bond_xmit_hash_policy" : {
8732 "description" : "Selects the transmit hash policy to use for slave selection in balance-xor and 802.3ad modes.",
8733 "enum" : [
8734 "layer2",
8735 "layer2+3",
8736 "layer3+4"
8737 ],
8738 "optional" : 1,
8739 "type" : "string"
8740 },
8741 "bridge_ports" : {
8742 "description" : "Specify the iterfaces you want to add to your bridge.",
8743 "format" : "pve-iface-list",
8744 "optional" : 1,
8745 "type" : "string",
8746 "typetext" : "<string>"
8747 },
8748 "bridge_vlan_aware" : {
8749 "description" : "Enable bridge vlan support.",
8750 "optional" : 1,
8751 "type" : "boolean",
8752 "typetext" : "<boolean>"
8753 },
8754 "comments" : {
8755 "description" : "Comments",
8756 "optional" : 1,
8757 "type" : "string",
8758 "typetext" : "<string>"
8759 },
8760 "comments6" : {
8761 "description" : "Comments",
8762 "optional" : 1,
8763 "type" : "string",
8764 "typetext" : "<string>"
8765 },
8766 "delete" : {
8767 "description" : "A list of settings you want to delete.",
8768 "format" : "pve-configid-list",
8769 "optional" : 1,
8770 "type" : "string",
8771 "typetext" : "<string>"
8772 },
8773 "gateway" : {
8774 "description" : "Default gateway address.",
8775 "format" : "ipv4",
8776 "optional" : 1,
8777 "type" : "string",
8778 "typetext" : "<string>"
8779 },
8780 "gateway6" : {
8781 "description" : "Default ipv6 gateway address.",
8782 "format" : "ipv6",
8783 "optional" : 1,
8784 "type" : "string",
8785 "typetext" : "<string>"
8786 },
8787 "iface" : {
8788 "description" : "Network interface name.",
8789 "format" : "pve-iface",
8790 "maxLength" : 20,
8791 "minLength" : 2,
8792 "type" : "string",
8793 "typetext" : "<string>"
8794 },
8795 "netmask" : {
8796 "description" : "Network mask.",
8797 "format" : "ipv4mask",
8798 "optional" : 1,
8799 "requires" : "address",
8800 "type" : "string",
8801 "typetext" : "<string>"
8802 },
8803 "netmask6" : {
8804 "description" : "Network mask.",
8805 "maximum" : 128,
8806 "minimum" : 0,
8807 "optional" : 1,
8808 "requires" : "address6",
8809 "type" : "integer",
8810 "typetext" : "<integer> (0 - 128)"
8811 },
8812 "node" : {
8813 "description" : "The cluster node name.",
8814 "format" : "pve-node",
8815 "type" : "string",
8816 "typetext" : "<string>"
8817 },
8818 "ovs_bonds" : {
8819 "description" : "Specify the interfaces used by the bonding device.",
8820 "format" : "pve-iface-list",
8821 "optional" : 1,
8822 "type" : "string",
8823 "typetext" : "<string>"
8824 },
8825 "ovs_bridge" : {
8826 "description" : "The OVS bridge associated with a OVS port. This is required when you create an OVS port.",
8827 "format" : "pve-iface",
8828 "optional" : 1,
8829 "type" : "string",
8830 "typetext" : "<string>"
8831 },
8832 "ovs_options" : {
8833 "description" : "OVS interface options.",
8834 "maxLength" : 1024,
8835 "optional" : 1,
8836 "type" : "string",
8837 "typetext" : "<string>"
8838 },
8839 "ovs_ports" : {
8840 "description" : "Specify the iterfaces you want to add to your bridge.",
8841 "format" : "pve-iface-list",
8842 "optional" : 1,
8843 "type" : "string",
8844 "typetext" : "<string>"
8845 },
8846 "ovs_tag" : {
8847 "description" : "Specify a VLan tag (used by OVSPort, OVSIntPort, OVSBond)",
8848 "maximum" : 4094,
8849 "minimum" : 1,
8850 "optional" : 1,
8851 "type" : "integer",
8852 "typetext" : "<integer> (1 - 4094)"
8853 },
8854 "slaves" : {
8855 "description" : "Specify the interfaces used by the bonding device.",
8856 "format" : "pve-iface-list",
8857 "optional" : 1,
8858 "type" : "string",
8859 "typetext" : "<string>"
8860 },
8861 "type" : {
8862 "description" : "Network interface type",
8863 "enum" : [
8864 "bridge",
8865 "bond",
8866 "eth",
8867 "alias",
8868 "vlan",
8869 "OVSBridge",
8870 "OVSBond",
8871 "OVSPort",
8872 "OVSIntPort",
8873 "unknown"
8874 ],
8875 "type" : "string"
8876 }
8877 }
8878 },
8879 "protected" : 1,
8880 "proxyto" : "node",
8881 "returns" : {
8882 "type" : "null"
8883 }
8884 }
8885 },
8886 "leaf" : 1,
8887 "path" : "/nodes/{node}/network/{iface}",
8888 "text" : "{iface}"
8889 }
8890 ],
8891 "info" : {
8892 "DELETE" : {
8893 "description" : "Revert network configuration changes.",
8894 "method" : "DELETE",
8895 "name" : "revert_network_changes",
8896 "parameters" : {
8897 "additionalProperties" : 0,
8898 "properties" : {
8899 "node" : {
8900 "description" : "The cluster node name.",
8901 "format" : "pve-node",
8902 "type" : "string",
8903 "typetext" : "<string>"
8904 }
8905 }
8906 },
8907 "protected" : 1,
8908 "proxyto" : "node",
8909 "returns" : {
8910 "type" : "null"
8911 }
8912 },
8913 "GET" : {
8914 "description" : "List available networks",
8915 "method" : "GET",
8916 "name" : "index",
8917 "parameters" : {
8918 "additionalProperties" : 0,
8919 "properties" : {
8920 "node" : {
8921 "description" : "The cluster node name.",
8922 "format" : "pve-node",
8923 "type" : "string",
8924 "typetext" : "<string>"
8925 },
8926 "type" : {
8927 "description" : "Only list specific interface types.",
8928 "enum" : [
8929 "bridge",
8930 "bond",
8931 "eth",
8932 "alias",
8933 "vlan",
8934 "OVSBridge",
8935 "OVSBond",
8936 "OVSPort",
8937 "OVSIntPort",
8938 "any_bridge"
8939 ],
8940 "optional" : 1,
8941 "type" : "string"
8942 }
8943 }
8944 },
732d76e1
DM
8945 "permissions" : {
8946 "check" : [
8947 "admin",
8948 "audit"
8949 ]
8950 },
410dc2c9
DM
8951 "proxyto" : "node",
8952 "returns" : {
8953 "items" : {
8954 "properties" : {},
8955 "type" : "object"
8956 },
8957 "links" : [
8958 {
8959 "href" : "{iface}",
8960 "rel" : "child"
8961 }
8962 ],
8963 "type" : "array"
8964 }
8965 },
8966 "POST" : {
8967 "description" : "Create network device configuration",
8968 "method" : "POST",
8969 "name" : "create_network",
8970 "parameters" : {
8971 "additionalProperties" : 0,
8972 "properties" : {
8973 "address" : {
8974 "description" : "IP address.",
8975 "format" : "ipv4",
8976 "optional" : 1,
8977 "requires" : "netmask",
8978 "type" : "string",
8979 "typetext" : "<string>"
8980 },
8981 "address6" : {
8982 "description" : "IP address.",
8983 "format" : "ipv6",
8984 "optional" : 1,
8985 "requires" : "netmask6",
8986 "type" : "string",
8987 "typetext" : "<string>"
8988 },
8989 "autostart" : {
8990 "description" : "Automatically start interface on boot.",
8991 "optional" : 1,
8992 "type" : "boolean",
8993 "typetext" : "<boolean>"
8994 },
8995 "bond_mode" : {
8996 "description" : "Bonding mode.",
8997 "enum" : [
8998 "balance-rr",
8999 "active-backup",
9000 "balance-xor",
9001 "broadcast",
9002 "802.3ad",
9003 "balance-tlb",
9004 "balance-alb",
9005 "balance-slb",
9006 "lacp-balance-slb",
9007 "lacp-balance-tcp"
9008 ],
9009 "optional" : 1,
9010 "type" : "string"
9011 },
9012 "bond_xmit_hash_policy" : {
9013 "description" : "Selects the transmit hash policy to use for slave selection in balance-xor and 802.3ad modes.",
9014 "enum" : [
9015 "layer2",
9016 "layer2+3",
9017 "layer3+4"
9018 ],
9019 "optional" : 1,
9020 "type" : "string"
9021 },
9022 "bridge_ports" : {
9023 "description" : "Specify the iterfaces you want to add to your bridge.",
9024 "format" : "pve-iface-list",
9025 "optional" : 1,
9026 "type" : "string",
9027 "typetext" : "<string>"
9028 },
9029 "bridge_vlan_aware" : {
9030 "description" : "Enable bridge vlan support.",
9031 "optional" : 1,
9032 "type" : "boolean",
9033 "typetext" : "<boolean>"
9034 },
9035 "comments" : {
9036 "description" : "Comments",
9037 "optional" : 1,
9038 "type" : "string",
9039 "typetext" : "<string>"
9040 },
9041 "comments6" : {
9042 "description" : "Comments",
9043 "optional" : 1,
9044 "type" : "string",
9045 "typetext" : "<string>"
9046 },
9047 "gateway" : {
9048 "description" : "Default gateway address.",
9049 "format" : "ipv4",
9050 "optional" : 1,
9051 "type" : "string",
9052 "typetext" : "<string>"
9053 },
9054 "gateway6" : {
9055 "description" : "Default ipv6 gateway address.",
9056 "format" : "ipv6",
9057 "optional" : 1,
9058 "type" : "string",
9059 "typetext" : "<string>"
9060 },
9061 "iface" : {
9062 "description" : "Network interface name.",
9063 "format" : "pve-iface",
9064 "maxLength" : 20,
9065 "minLength" : 2,
9066 "type" : "string",
9067 "typetext" : "<string>"
9068 },
9069 "netmask" : {
9070 "description" : "Network mask.",
9071 "format" : "ipv4mask",
9072 "optional" : 1,
9073 "requires" : "address",
9074 "type" : "string",
9075 "typetext" : "<string>"
9076 },
9077 "netmask6" : {
9078 "description" : "Network mask.",
9079 "maximum" : 128,
9080 "minimum" : 0,
9081 "optional" : 1,
9082 "requires" : "address6",
9083 "type" : "integer",
9084 "typetext" : "<integer> (0 - 128)"
9085 },
9086 "node" : {
9087 "description" : "The cluster node name.",
9088 "format" : "pve-node",
9089 "type" : "string",
9090 "typetext" : "<string>"
9091 },
9092 "ovs_bonds" : {
9093 "description" : "Specify the interfaces used by the bonding device.",
9094 "format" : "pve-iface-list",
9095 "optional" : 1,
9096 "type" : "string",
9097 "typetext" : "<string>"
9098 },
9099 "ovs_bridge" : {
9100 "description" : "The OVS bridge associated with a OVS port. This is required when you create an OVS port.",
9101 "format" : "pve-iface",
9102 "optional" : 1,
9103 "type" : "string",
9104 "typetext" : "<string>"
9105 },
9106 "ovs_options" : {
9107 "description" : "OVS interface options.",
9108 "maxLength" : 1024,
9109 "optional" : 1,
9110 "type" : "string",
9111 "typetext" : "<string>"
9112 },
9113 "ovs_ports" : {
9114 "description" : "Specify the iterfaces you want to add to your bridge.",
9115 "format" : "pve-iface-list",
9116 "optional" : 1,
9117 "type" : "string",
9118 "typetext" : "<string>"
9119 },
9120 "ovs_tag" : {
9121 "description" : "Specify a VLan tag (used by OVSPort, OVSIntPort, OVSBond)",
9122 "maximum" : 4094,
9123 "minimum" : 1,
9124 "optional" : 1,
9125 "type" : "integer",
9126 "typetext" : "<integer> (1 - 4094)"
9127 },
9128 "slaves" : {
9129 "description" : "Specify the interfaces used by the bonding device.",
9130 "format" : "pve-iface-list",
9131 "optional" : 1,
9132 "type" : "string",
9133 "typetext" : "<string>"
9134 },
9135 "type" : {
9136 "description" : "Network interface type",
9137 "enum" : [
9138 "bridge",
9139 "bond",
9140 "eth",
9141 "alias",
9142 "vlan",
9143 "OVSBridge",
9144 "OVSBond",
9145 "OVSPort",
9146 "OVSIntPort",
9147 "unknown"
9148 ],
9149 "type" : "string"
9150 }
9151 }
9152 },
9153 "protected" : 1,
9154 "proxyto" : "node",
9155 "returns" : {
9156 "type" : "null"
9157 }
9158 }
9159 },
9160 "leaf" : 0,
9161 "path" : "/nodes/{node}/network",
9162 "text" : "network"
9163 },
9164 {
9165 "children" : [
9166 {
9167 "children" : [
9168 {
9169 "info" : {
9170 "GET" : {
9171 "description" : "Read task log.",
9172 "method" : "GET",
9173 "name" : "read_task_log",
9174 "parameters" : {
9175 "additionalProperties" : 0,
9176 "properties" : {
9177 "limit" : {
9178 "minimum" : 0,
9179 "optional" : 1,
9180 "type" : "integer",
9181 "typetext" : "<integer> (0 - N)"
9182 },
9183 "node" : {
9184 "description" : "The cluster node name.",
9185 "format" : "pve-node",
9186 "type" : "string",
9187 "typetext" : "<string>"
9188 },
9189 "start" : {
9190 "minimum" : 0,
9191 "optional" : 1,
9192 "type" : "integer",
9193 "typetext" : "<integer> (0 - N)"
9194 },
9195 "upid" : {
9196 "type" : "string",
9197 "typetext" : "<string>"
9198 }
9199 }
9200 },
732d76e1
DM
9201 "permissions" : {
9202 "check" : [
9203 "admin",
9204 "audit"
9205 ]
9206 },
410dc2c9
DM
9207 "protected" : 1,
9208 "proxyto" : "node",
9209 "returns" : {
9210 "items" : {
9211 "properties" : {
9212 "n" : {
9213 "description" : "Line number",
9214 "type" : "integer"
9215 },
9216 "t" : {
9217 "description" : "Line text",
9218 "type" : "string"
9219 }
9220 },
9221 "type" : "object"
9222 },
9223 "type" : "array"
9224 }
9225 }
9226 },
9227 "leaf" : 1,
9228 "path" : "/nodes/{node}/tasks/{upid}/log",
9229 "text" : "log"
9230 },
9231 {
9232 "info" : {
9233 "GET" : {
9234 "description" : "Read task status.",
9235 "method" : "GET",
9236 "name" : "read_task_status",
9237 "parameters" : {
9238 "additionalProperties" : 0,
9239 "properties" : {
9240 "node" : {
9241 "description" : "The cluster node name.",
9242 "format" : "pve-node",
9243 "type" : "string",
9244 "typetext" : "<string>"
9245 },
9246 "upid" : {
9247 "type" : "string",
9248 "typetext" : "<string>"
9249 }
9250 }
9251 },
732d76e1
DM
9252 "permissions" : {
9253 "check" : [
9254 "admin",
9255 "audit"
9256 ]
9257 },
410dc2c9
DM
9258 "protected" : 1,
9259 "proxyto" : "node",
9260 "returns" : {
9261 "properties" : {
9262 "pid" : {
9263 "type" : "integer"
9264 },
9265 "status" : {
9266 "enum" : [
9267 "running",
9268 "stopped"
9269 ],
9270 "type" : "string"
9271 }
9272 },
9273 "type" : "object"
9274 }
9275 }
9276 },
9277 "leaf" : 1,
9278 "path" : "/nodes/{node}/tasks/{upid}/status",
9279 "text" : "status"
9280 }
9281 ],
9282 "info" : {
9283 "DELETE" : {
9284 "description" : "Stop a task.",
9285 "method" : "DELETE",
9286 "name" : "stop_task",
9287 "parameters" : {
9288 "additionalProperties" : 0,
9289 "properties" : {
9290 "node" : {
9291 "description" : "The cluster node name.",
9292 "format" : "pve-node",
9293 "type" : "string",
9294 "typetext" : "<string>"
9295 },
9296 "upid" : {
9297 "type" : "string",
9298 "typetext" : "<string>"
9299 }
9300 }
9301 },
732d76e1
DM
9302 "permissions" : {
9303 "check" : [
9304 "admin"
9305 ]
9306 },
410dc2c9
DM
9307 "protected" : 1,
9308 "proxyto" : "node",
9309 "returns" : {
9310 "type" : "null"
9311 }
9312 },
9313 "GET" : {
9314 "description" : "",
9315 "method" : "GET",
9316 "name" : "upid_index",
9317 "parameters" : {
9318 "additionalProperties" : 0,
9319 "properties" : {
9320 "node" : {
9321 "description" : "The cluster node name.",
9322 "format" : "pve-node",
9323 "type" : "string",
9324 "typetext" : "<string>"
9325 },
9326 "upid" : {
9327 "type" : "string",
9328 "typetext" : "<string>"
9329 }
9330 }
9331 },
732d76e1
DM
9332 "permissions" : {
9333 "check" : [
9334 "admin",
9335 "audit"
9336 ]
9337 },
410dc2c9
DM
9338 "returns" : {
9339 "items" : {
9340 "properties" : {},
9341 "type" : "object"
9342 },
9343 "links" : [
9344 {
9345 "href" : "{name}",
9346 "rel" : "child"
9347 }
9348 ],
9349 "type" : "array"
9350 }
9351 }
9352 },
9353 "leaf" : 0,
9354 "path" : "/nodes/{node}/tasks/{upid}",
9355 "text" : "{upid}"
9356 }
9357 ],
9358 "info" : {
9359 "GET" : {
9360 "description" : "Read task list for one node (finished tasks).",
9361 "method" : "GET",
9362 "name" : "node_tasks",
9363 "parameters" : {
9364 "additionalProperties" : 0,
9365 "properties" : {
9366 "errors" : {
9367 "optional" : 1,
9368 "type" : "boolean",
9369 "typetext" : "<boolean>"
9370 },
9371 "limit" : {
9372 "minimum" : 0,
9373 "optional" : 1,
9374 "type" : "integer",
9375 "typetext" : "<integer> (0 - N)"
9376 },
9377 "node" : {
9378 "description" : "The cluster node name.",
9379 "format" : "pve-node",
9380 "type" : "string",
9381 "typetext" : "<string>"
9382 },
9383 "start" : {
9384 "minimum" : 0,
9385 "optional" : 1,
9386 "type" : "integer",
9387 "typetext" : "<integer> (0 - N)"
9388 },
9389 "userfilter" : {
9390 "optional" : 1,
9391 "type" : "string",
9392 "typetext" : "<string>"
9393 }
9394 }
9395 },
732d76e1
DM
9396 "permissions" : {
9397 "check" : [
9398 "admin",
9399 "audit"
9400 ]
9401 },
410dc2c9
DM
9402 "proxyto" : "node",
9403 "returns" : {
9404 "items" : {
9405 "properties" : {
9406 "upid" : {
9407 "type" : "string"
9408 }
9409 },
9410 "type" : "object"
9411 },
9412 "links" : [
9413 {
9414 "href" : "{upid}",
9415 "rel" : "child"
9416 }
9417 ],
9418 "type" : "array"
9419 }
9420 }
9421 },
9422 "leaf" : 0,
9423 "path" : "/nodes/{node}/tasks",
9424 "text" : "tasks"
9425 },
9426 {
9427 "children" : [
9428 {
9429 "children" : [
9430 {
9431 "info" : {
9432 "GET" : {
9433 "description" : "Read service properties",
9434 "method" : "GET",
9435 "name" : "service_state",
9436 "parameters" : {
9437 "additionalProperties" : 0,
9438 "properties" : {
9439 "node" : {
9440 "description" : "The cluster node name.",
9441 "format" : "pve-node",
9442 "type" : "string",
9443 "typetext" : "<string>"
9444 },
9445 "service" : {
9446 "description" : "Service ID",
9447 "enum" : [
a55e94a6
DM
9448 "clamav-daemon",
9449 "clamav-freshclam",
732d76e1 9450 "fetchmail",
410dc2c9
DM
9451 "pmgproxy",
9452 "pmgdaemon",
a55e94a6 9453 "pmgpolicy",
410dc2c9 9454 "pmg-smtp-filter",
d7cd791b
DM
9455 "pmgtunnel",
9456 "pmgmirror",
9457 "ssh",
9458 "rsyslog",
410dc2c9 9459 "postfix",
d7cd791b 9460 "postgres",
a55e94a6
DM
9461 "systemd-timesyncd",
9462 "pmg-hourly",
d7cd791b 9463 "pmg-daily",
9fda36b0 9464 "pmgreport",
d7cd791b 9465 "pmgspamreport"
410dc2c9
DM
9466 ],
9467 "type" : "string"
9468 }
9469 }
9470 },
732d76e1
DM
9471 "permissions" : {
9472 "check" : [
9473 "admin",
9474 "audit"
9475 ]
9476 },
410dc2c9
DM
9477 "protected" : 1,
9478 "proxyto" : "node",
9479 "returns" : {
9480 "properties" : {},
9481 "type" : "object"
9482 }
9483 }
9484 },
9485 "leaf" : 1,
9486 "path" : "/nodes/{node}/services/{service}/state",
9487 "text" : "state"
9488 },
9489 {
9490 "info" : {
9491 "POST" : {
9492 "description" : "Start service.",
9493 "method" : "POST",
9494 "name" : "service_start",
9495 "parameters" : {
9496 "additionalProperties" : 0,
9497 "properties" : {
9498 "node" : {
9499 "description" : "The cluster node name.",
9500 "format" : "pve-node",
9501 "type" : "string",
9502 "typetext" : "<string>"
9503 },
9504 "service" : {
9505 "description" : "Service ID",
9506 "enum" : [
a55e94a6
DM
9507 "clamav-daemon",
9508 "clamav-freshclam",
732d76e1 9509 "fetchmail",
410dc2c9
DM
9510 "pmgproxy",
9511 "pmgdaemon",
a55e94a6 9512 "pmgpolicy",
410dc2c9 9513 "pmg-smtp-filter",
d7cd791b
DM
9514 "pmgtunnel",
9515 "pmgmirror",
9516 "ssh",
9517 "rsyslog",
410dc2c9 9518 "postfix",
d7cd791b 9519 "postgres",
a55e94a6
DM
9520 "systemd-timesyncd",
9521 "pmg-hourly",
d7cd791b 9522 "pmg-daily",
9fda36b0 9523 "pmgreport",
d7cd791b 9524 "pmgspamreport"
410dc2c9
DM
9525 ],
9526 "type" : "string"
9527 }
9528 }
9529 },
732d76e1
DM
9530 "permissions" : {
9531 "check" : [
9532 "admin"
9533 ]
9534 },
410dc2c9
DM
9535 "protected" : 1,
9536 "proxyto" : "node",
9537 "returns" : {
9538 "type" : "string"
9539 }
9540 }
9541 },
9542 "leaf" : 1,
9543 "path" : "/nodes/{node}/services/{service}/start",
9544 "text" : "start"
9545 },
9546 {
9547 "info" : {
9548 "POST" : {
9549 "description" : "Stop service.",
9550 "method" : "POST",
9551 "name" : "service_stop",
9552 "parameters" : {
9553 "additionalProperties" : 0,
9554 "properties" : {
9555 "node" : {
9556 "description" : "The cluster node name.",
9557 "format" : "pve-node",
9558 "type" : "string",
9559 "typetext" : "<string>"
9560 },
9561 "service" : {
9562 "description" : "Service ID",
9563 "enum" : [
a55e94a6
DM
9564 "clamav-daemon",
9565 "clamav-freshclam",
732d76e1 9566 "fetchmail",
410dc2c9
DM
9567 "pmgproxy",
9568 "pmgdaemon",
a55e94a6 9569 "pmgpolicy",
410dc2c9 9570 "pmg-smtp-filter",
d7cd791b
DM
9571 "pmgtunnel",
9572 "pmgmirror",
9573 "ssh",
9574 "rsyslog",
410dc2c9 9575 "postfix",
d7cd791b 9576 "postgres",
a55e94a6
DM
9577 "systemd-timesyncd",
9578 "pmg-hourly",
d7cd791b 9579 "pmg-daily",
9fda36b0 9580 "pmgreport",
d7cd791b 9581 "pmgspamreport"
410dc2c9
DM
9582 ],
9583 "type" : "string"
9584 }
9585 }
9586 },
732d76e1
DM
9587 "permissions" : {
9588 "check" : [
9589 "admin"
9590 ]
9591 },
410dc2c9
DM
9592 "protected" : 1,
9593 "proxyto" : "node",
9594 "returns" : {
9595 "type" : "string"
9596 }
9597 }
9598 },
9599 "leaf" : 1,
9600 "path" : "/nodes/{node}/services/{service}/stop",
9601 "text" : "stop"
9602 },
9603 {
9604 "info" : {
9605 "POST" : {
9606 "description" : "Restart service.",
9607 "method" : "POST",
9608 "name" : "service_restart",
9609 "parameters" : {
9610 "additionalProperties" : 0,
9611 "properties" : {
9612 "node" : {
9613 "description" : "The cluster node name.",
9614 "format" : "pve-node",
9615 "type" : "string",
9616 "typetext" : "<string>"
9617 },
9618 "service" : {
9619 "description" : "Service ID",
9620 "enum" : [
a55e94a6
DM
9621 "clamav-daemon",
9622 "clamav-freshclam",
732d76e1 9623 "fetchmail",
410dc2c9
DM
9624 "pmgproxy",
9625 "pmgdaemon",
a55e94a6 9626 "pmgpolicy",
410dc2c9 9627 "pmg-smtp-filter",
d7cd791b
DM
9628 "pmgtunnel",
9629 "pmgmirror",
9630 "ssh",
9631 "rsyslog",
410dc2c9 9632 "postfix",
d7cd791b 9633 "postgres",
a55e94a6
DM
9634 "systemd-timesyncd",
9635 "pmg-hourly",
d7cd791b 9636 "pmg-daily",
9fda36b0 9637 "pmgreport",
d7cd791b 9638 "pmgspamreport"
410dc2c9
DM
9639 ],
9640 "type" : "string"
9641 }
9642 }
9643 },
732d76e1
DM
9644 "permissions" : {
9645 "check" : [
9646 "admin"
9647 ]
9648 },
410dc2c9
DM
9649 "protected" : 1,
9650 "proxyto" : "node",
9651 "returns" : {
9652 "type" : "string"
9653 }
9654 }
9655 },
9656 "leaf" : 1,
9657 "path" : "/nodes/{node}/services/{service}/restart",
9658 "text" : "restart"
9659 },
9660 {
9661 "info" : {
9662 "POST" : {
9663 "description" : "Reload service.",
9664 "method" : "POST",
9665 "name" : "service_reload",
9666 "parameters" : {
9667 "additionalProperties" : 0,
9668 "properties" : {
9669 "node" : {
9670 "description" : "The cluster node name.",
9671 "format" : "pve-node",
9672 "type" : "string",
9673 "typetext" : "<string>"
9674 },
9675 "service" : {
9676 "description" : "Service ID",
9677 "enum" : [
a55e94a6
DM
9678 "clamav-daemon",
9679 "clamav-freshclam",
732d76e1 9680 "fetchmail",
410dc2c9
DM
9681 "pmgproxy",
9682 "pmgdaemon",
a55e94a6 9683 "pmgpolicy",
410dc2c9 9684 "pmg-smtp-filter",
d7cd791b
DM
9685 "pmgtunnel",
9686 "pmgmirror",
9687 "ssh",
9688 "rsyslog",
410dc2c9 9689 "postfix",
d7cd791b 9690 "postgres",
a55e94a6
DM
9691 "systemd-timesyncd",
9692 "pmg-hourly",
d7cd791b 9693 "pmg-daily",
9fda36b0 9694 "pmgreport",
d7cd791b 9695 "pmgspamreport"
410dc2c9
DM
9696 ],
9697 "type" : "string"
9698 }
9699 }
9700 },
732d76e1
DM
9701 "permissions" : {
9702 "check" : [
9703 "admin"
9704 ]
9705 },
410dc2c9
DM
9706 "protected" : 1,
9707 "proxyto" : "node",
9708 "returns" : {
9709 "type" : "string"
9710 }
9711 }
9712 },
9713 "leaf" : 1,
9714 "path" : "/nodes/{node}/services/{service}/reload",
9715 "text" : "reload"
9716 }
9717 ],
9718 "info" : {
9719 "GET" : {
9720 "description" : "Directory index",
9721 "method" : "GET",
9722 "name" : "srvcmdidx",
9723 "parameters" : {
9724 "additionalProperties" : 0,
9725 "properties" : {
9726 "node" : {
9727 "description" : "The cluster node name.",
9728 "format" : "pve-node",
9729 "type" : "string",
9730 "typetext" : "<string>"
9731 },
9732 "service" : {
9733 "description" : "Service ID",
9734 "enum" : [
a55e94a6
DM
9735 "clamav-daemon",
9736 "clamav-freshclam",
732d76e1 9737 "fetchmail",
410dc2c9
DM
9738 "pmgproxy",
9739 "pmgdaemon",
a55e94a6 9740 "pmgpolicy",
410dc2c9 9741 "pmg-smtp-filter",
d7cd791b
DM
9742 "pmgtunnel",
9743 "pmgmirror",
9744 "ssh",
9745 "rsyslog",
410dc2c9 9746 "postfix",
d7cd791b 9747 "postgres",
a55e94a6
DM
9748 "systemd-timesyncd",
9749 "pmg-hourly",
d7cd791b 9750 "pmg-daily",
9fda36b0 9751 "pmgreport",
d7cd791b 9752 "pmgspamreport"
410dc2c9
DM
9753 ],
9754 "type" : "string"
9755 }
9756 }
9757 },
732d76e1
DM
9758 "permissions" : {
9759 "check" : [
9760 "admin",
9761 "audit"
9762 ]
9763 },
410dc2c9
DM
9764 "returns" : {
9765 "items" : {
9766 "properties" : {
9767 "subdir" : {
9768 "type" : "string"
9769 }
9770 },
9771 "type" : "object"
9772 },
9773 "links" : [
9774 {
9775 "href" : "{subdir}",
9776 "rel" : "child"
9777 }
9778 ],
9779 "type" : "array"
9780 }
9781 }
9782 },
9fda36b0
DM
9783 "leaf" : 0,
9784 "path" : "/nodes/{node}/services/{service}",
9785 "text" : "{service}"
9786 }
9787 ],
9788 "info" : {
9789 "GET" : {
9790 "description" : "Service list.",
9791 "method" : "GET",
9792 "name" : "index",
9793 "parameters" : {
9794 "additionalProperties" : 0,
9795 "properties" : {
9796 "node" : {
9797 "description" : "The cluster node name.",
9798 "format" : "pve-node",
9799 "type" : "string",
9800 "typetext" : "<string>"
9801 }
9802 }
9803 },
732d76e1
DM
9804 "permissions" : {
9805 "check" : [
9806 "admin",
9807 "audit"
9808 ]
9809 },
9fda36b0
DM
9810 "protected" : 1,
9811 "proxyto" : "node",
9812 "returns" : {
9813 "items" : {
9814 "properties" : {},
9815 "type" : "object"
9816 },
9817 "links" : [
9818 {
9819 "href" : "{service}",
9820 "rel" : "child"
9821 }
9822 ],
9823 "type" : "array"
9824 }
9825 }
9826 },
9827 "leaf" : 0,
9828 "path" : "/nodes/{node}/services",
9829 "text" : "services"
9830 },
9831 {
9832 "info" : {
9833 "GET" : {
9834 "description" : "Read subscription info.",
9835 "method" : "GET",
9836 "name" : "get",
9837 "parameters" : {
9838 "additionalProperties" : 0,
9839 "properties" : {
9840 "node" : {
9841 "description" : "The cluster node name.",
9842 "format" : "pve-node",
9843 "type" : "string",
9844 "typetext" : "<string>"
9845 }
9846 }
9847 },
9848 "permissions" : {
9849 "check" : [
9850 "admin",
9851 "qmanager",
9852 "audit",
9853 "quser"
9854 ]
9855 },
9856 "proxyto" : "node",
9857 "returns" : {
9858 "type" : "object"
9859 }
732d76e1
DM
9860 },
9861 "POST" : {
9862 "description" : "Update subscription info.",
9863 "method" : "POST",
9864 "name" : "update",
9865 "parameters" : {
9866 "additionalProperties" : 0,
9867 "properties" : {
9868 "force" : {
9869 "default" : 0,
9870 "description" : "Always connect to server, even if we have up to date info inside local cache.",
9871 "optional" : 1,
9872 "type" : "boolean",
9873 "typetext" : "<boolean>"
9874 },
9875 "node" : {
9876 "description" : "The cluster node name.",
9877 "format" : "pve-node",
9878 "type" : "string",
9879 "typetext" : "<string>"
9880 }
9881 }
9882 },
9883 "permissions" : {
9884 "check" : [
9885 "admin"
9886 ]
9887 },
9888 "protected" : 1,
9889 "proxyto" : "node",
9890 "returns" : {
9891 "type" : "null"
9892 }
9893 },
9894 "PUT" : {
9895 "description" : "Set subscription key.",
9896 "method" : "PUT",
9897 "name" : "set",
9898 "parameters" : {
9899 "additionalProperties" : 0,
9900 "properties" : {
9901 "key" : {
9902 "description" : "Proxmox Mail Gateway subscription key",
9903 "maxLength" : 32,
9904 "pattern" : "pmg([cbsp])-[0-9a-f]{10}",
9905 "type" : "string"
9906 },
9907 "node" : {
9908 "description" : "The cluster node name.",
9909 "format" : "pve-node",
9910 "type" : "string",
9911 "typetext" : "<string>"
9912 }
9913 }
9914 },
9915 "protected" : 1,
9916 "proxyto" : "node",
9917 "returns" : {
9918 "type" : "null"
9919 }
9fda36b0
DM
9920 }
9921 },
9922 "leaf" : 1,
9923 "path" : "/nodes/{node}/subscription",
9924 "text" : "subscription"
9925 },
9926 {
9927 "children" : [
9928 {
9929 "info" : {
9930 "GET" : {
9931 "description" : "List available updates.",
9932 "method" : "GET",
9933 "name" : "list_updates",
9934 "parameters" : {
9935 "additionalProperties" : 0,
9936 "properties" : {
9937 "node" : {
9938 "description" : "The cluster node name.",
9939 "format" : "pve-node",
9940 "type" : "string",
9941 "typetext" : "<string>"
9942 }
9943 }
9944 },
732d76e1
DM
9945 "permissions" : {
9946 "check" : [
9947 "admin",
9948 "audit"
9949 ]
9950 },
9fda36b0
DM
9951 "protected" : 1,
9952 "proxyto" : "node",
9953 "returns" : {
9954 "items" : {
9955 "properties" : {},
9956 "type" : "object"
9957 },
9958 "type" : "array"
9959 }
9960 },
9961 "POST" : {
9962 "description" : "This is used to resynchronize the package index files from their sources (apt-get update).",
9963 "method" : "POST",
9964 "name" : "update_database",
9965 "parameters" : {
9966 "additionalProperties" : 0,
9967 "properties" : {
9968 "node" : {
9969 "description" : "The cluster node name.",
9970 "format" : "pve-node",
9971 "type" : "string",
9972 "typetext" : "<string>"
9973 },
9974 "notify" : {
9975 "default" : 0,
9976 "description" : "Send notification mail about new packages (to email address specified for user 'root@pam').",
9977 "optional" : 1,
9978 "type" : "boolean",
9979 "typetext" : "<boolean>"
9980 },
9981 "quiet" : {
9982 "default" : 0,
9983 "description" : "Only produces output suitable for logging, omitting progress indicators.",
9984 "optional" : 1,
9985 "type" : "boolean",
9986 "typetext" : "<boolean>"
9987 }
9988 }
9989 },
732d76e1
DM
9990 "permissions" : {
9991 "check" : [
9992 "admin"
9993 ]
9994 },
9fda36b0
DM
9995 "protected" : 1,
9996 "proxyto" : "node",
9997 "returns" : {
9998 "type" : "string"
9999 }
10000 }
10001 },
10002 "leaf" : 1,
10003 "path" : "/nodes/{node}/apt/update",
10004 "text" : "update"
10005 },
10006 {
10007 "info" : {
10008 "GET" : {
10009 "description" : "Get package changelogs.",
10010 "method" : "GET",
10011 "name" : "changelog",
10012 "parameters" : {
10013 "additionalProperties" : 0,
10014 "properties" : {
10015 "name" : {
10016 "description" : "Package name.",
10017 "type" : "string",
10018 "typetext" : "<string>"
10019 },
10020 "node" : {
10021 "description" : "The cluster node name.",
10022 "format" : "pve-node",
10023 "type" : "string",
10024 "typetext" : "<string>"
10025 },
10026 "version" : {
10027 "description" : "Package version.",
10028 "optional" : 1,
10029 "type" : "string",
10030 "typetext" : "<string>"
10031 }
10032 }
10033 },
732d76e1
DM
10034 "permissions" : {
10035 "check" : [
10036 "admin",
10037 "audit"
10038 ]
10039 },
9fda36b0
DM
10040 "proxyto" : "node",
10041 "returns" : {
10042 "type" : "string"
10043 }
10044 }
10045 },
10046 "leaf" : 1,
10047 "path" : "/nodes/{node}/apt/changelog",
10048 "text" : "changelog"
10049 },
10050 {
10051 "info" : {
10052 "GET" : {
10053 "description" : "Get package information for important Proxmox packages.",
10054 "method" : "GET",
10055 "name" : "versions",
10056 "parameters" : {
10057 "additionalProperties" : 0,
10058 "properties" : {
10059 "node" : {
10060 "description" : "The cluster node name.",
10061 "format" : "pve-node",
10062 "type" : "string",
10063 "typetext" : "<string>"
10064 }
10065 }
10066 },
10067 "permissions" : {
10068 "check" : [
732d76e1
DM
10069 "admin",
10070 "audit"
9fda36b0
DM
10071 ]
10072 },
10073 "proxyto" : "node",
10074 "returns" : {
10075 "items" : {
10076 "properties" : {},
10077 "type" : "object"
10078 },
10079 "type" : "array"
10080 }
10081 }
10082 },
10083 "leaf" : 1,
10084 "path" : "/nodes/{node}/apt/versions",
10085 "text" : "versions"
10086 }
10087 ],
10088 "info" : {
10089 "GET" : {
10090 "description" : "Directory index for apt (Advanced Package Tool).",
10091 "method" : "GET",
10092 "name" : "index",
10093 "parameters" : {
10094 "additionalProperties" : 0,
10095 "properties" : {
10096 "node" : {
10097 "description" : "The cluster node name.",
10098 "format" : "pve-node",
10099 "type" : "string",
10100 "typetext" : "<string>"
10101 }
10102 }
10103 },
10104 "permissions" : {
10105 "user" : "all"
10106 },
10107 "returns" : {
10108 "items" : {
10109 "properties" : {
10110 "id" : {
10111 "type" : "string"
10112 }
10113 },
10114 "type" : "object"
10115 },
10116 "links" : [
10117 {
10118 "href" : "{id}",
10119 "rel" : "child"
10120 }
10121 ],
10122 "type" : "array"
10123 }
10124 }
10125 },
10126 "leaf" : 0,
10127 "path" : "/nodes/{node}/apt",
10128 "text" : "apt"
10129 },
10130 {
10131 "children" : [
10132 {
10133 "info" : {
10134 "GET" : {
10135 "description" : "Get the detailed syslog entries for a specific mail ID.",
10136 "method" : "GET",
10137 "name" : "maillog",
10138 "parameters" : {
10139 "additionalProperties" : 0,
10140 "properties" : {
10141 "endtime" : {
10142 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
10143 "minimum" : 1,
10144 "optional" : 1,
10145 "type" : "integer",
10146 "typetext" : "<integer> (1 - N)"
10147 },
10148 "id" : {
10149 "description" : "Mail ID (as returend by the list API).",
10150 "maxLength" : 64,
10151 "minLength" : 3,
10152 "type" : "string",
10153 "typetext" : "<string>"
10154 },
10155 "node" : {
10156 "description" : "The cluster node name.",
10157 "format" : "pve-node",
10158 "type" : "string",
10159 "typetext" : "<string>"
10160 },
10161 "starttime" : {
10162 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
10163 "minimum" : 0,
10164 "optional" : 1,
10165 "type" : "integer",
10166 "typetext" : "<integer> (0 - N)"
10167 }
10168 }
10169 },
732d76e1
DM
10170 "permissions" : {
10171 "check" : [
10172 "admin",
10173 "audit"
10174 ]
10175 },
9fda36b0
DM
10176 "protected" : 1,
10177 "proxyto" : "node",
10178 "returns" : {
10179 "properties" : {
10180 "client" : {
10181 "description" : "Client address",
10182 "optional" : 1,
10183 "type" : "string"
10184 },
10185 "dstatus" : {
10186 "description" : "Delivery status.",
10187 "maxLength" : 1,
10188 "minLength" : 1,
10189 "type" : "string"
10190 },
10191 "from" : {
10192 "description" : "Sender email address.",
10193 "type" : "string"
10194 },
10195 "id" : {
10196 "description" : "Unique ID.",
10197 "type" : "string"
10198 },
10199 "logs" : {
10200 "items" : {
10201 "type" : "string"
10202 },
10203 "type" : "array"
10204 },
10205 "msgid" : {
10206 "description" : "SMTP message ID.",
10207 "optional" : 1,
10208 "type" : "string"
10209 },
10210 "qid" : {
10211 "description" : "Postfix qmgr ID.",
10212 "optional" : 1,
10213 "type" : "string"
10214 },
10215 "relay" : {
10216 "description" : "ID of relayed mail.",
10217 "optional" : 1,
10218 "type" : "string"
10219 },
10220 "rstatus" : {
10221 "description" : "Delivery status of relayed mail.",
10222 "maxLength" : 1,
10223 "minLength" : 1,
10224 "optional" : 1,
10225 "type" : "string"
10226 },
10227 "size" : {
10228 "description" : "The size of the raw email.",
10229 "optional" : 1,
10230 "type" : "number"
10231 },
10232 "time" : {
10233 "description" : "Delivery timestamp.",
10234 "type" : "integer"
10235 },
10236 "to" : {
10237 "description" : "Receiver email address.",
10238 "type" : "string"
10239 }
10240 },
10241 "type" : "object"
10242 }
10243 }
10244 },
10245 "leaf" : 1,
10246 "path" : "/nodes/{node}/tracker/{id}",
10247 "text" : "{id}"
10248 }
10249 ],
10250 "info" : {
10251 "GET" : {
10252 "description" : "Read mail list.",
10253 "method" : "GET",
10254 "name" : "list_mails",
10255 "parameters" : {
10256 "additionalProperties" : 0,
10257 "properties" : {
10258 "endtime" : {
10259 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
10260 "minimum" : 1,
10261 "optional" : 1,
10262 "type" : "integer",
10263 "typetext" : "<integer> (1 - N)"
10264 },
10265 "from" : {
10266 "description" : "Sender email address filter.",
10267 "maxLength" : 256,
10268 "minLength" : 1,
10269 "optional" : 1,
10270 "type" : "string",
10271 "typetext" : "<string>"
10272 },
10273 "greylist" : {
10274 "default" : 0,
10275 "description" : "Include Greylisted entries.",
10276 "optional" : 1,
10277 "type" : "boolean",
10278 "typetext" : "<boolean>"
10279 },
10280 "ndr" : {
10281 "default" : 0,
10282 "description" : "Include NDRs (non delivery reports).",
10283 "optional" : 1,
10284 "type" : "boolean",
10285 "typetext" : "<boolean>"
10286 },
10287 "node" : {
10288 "description" : "The cluster node name.",
10289 "format" : "pve-node",
10290 "type" : "string",
10291 "typetext" : "<string>"
10292 },
10293 "starttime" : {
10294 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
10295 "minimum" : 0,
10296 "optional" : 1,
10297 "type" : "integer",
10298 "typetext" : "<integer> (0 - N)"
10299 },
10300 "target" : {
10301 "description" : "Receiver email address filter.",
10302 "maxLength" : 256,
10303 "minLength" : 1,
10304 "optional" : 1,
10305 "type" : "string",
10306 "typetext" : "<string>"
10307 },
10308 "xfilter" : {
10309 "description" : "Only include mails containing this filter string.",
10310 "maxLength" : 256,
10311 "minLength" : 1,
10312 "optional" : 1,
10313 "type" : "string",
10314 "typetext" : "<string>"
10315 }
10316 }
10317 },
732d76e1
DM
10318 "permissions" : {
10319 "check" : [
10320 "admin",
10321 "audit"
10322 ]
10323 },
9fda36b0
DM
10324 "protected" : 1,
10325 "proxyto" : "node",
10326 "returns" : {
10327 "items" : {
10328 "properties" : {
10329 "client" : {
10330 "description" : "Client address",
10331 "optional" : 1,
10332 "type" : "string"
10333 },
10334 "dstatus" : {
10335 "description" : "Delivery status.",
10336 "maxLength" : 1,
10337 "minLength" : 1,
10338 "type" : "string"
10339 },
10340 "from" : {
10341 "description" : "Sender email address.",
10342 "type" : "string"
10343 },
10344 "id" : {
10345 "description" : "Unique ID.",
10346 "type" : "string"
10347 },
10348 "msgid" : {
10349 "description" : "SMTP message ID.",
10350 "optional" : 1,
10351 "type" : "string"
10352 },
10353 "qid" : {
10354 "description" : "Postfix qmgr ID.",
10355 "optional" : 1,
10356 "type" : "string"
10357 },
10358 "relay" : {
10359 "description" : "ID of relayed mail.",
10360 "optional" : 1,
10361 "type" : "string"
10362 },
10363 "rstatus" : {
10364 "description" : "Delivery status of relayed mail.",
10365 "maxLength" : 1,
10366 "minLength" : 1,
10367 "optional" : 1,
10368 "type" : "string"
10369 },
10370 "size" : {
10371 "description" : "The size of the raw email.",
10372 "optional" : 1,
10373 "type" : "number"
10374 },
10375 "time" : {
10376 "description" : "Delivery timestamp.",
10377 "type" : "integer"
10378 },
10379 "to" : {
10380 "description" : "Receiver email address.",
10381 "type" : "string"
10382 }
10383 },
10384 "type" : "object"
10385 },
10386 "links" : [
10387 {
10388 "href" : "{id}",
10389 "rel" : "child"
10390 }
10391 ],
10392 "type" : "array"
10393 }
10394 }
10395 },
10396 "leaf" : 0,
10397 "path" : "/nodes/{node}/tracker",
10398 "text" : "tracker"
10399 },
bb6e6e0d
DM
10400 {
10401 "children" : [
10402 {
10403 "info" : {
10404 "DELETE" : {
10405 "description" : "Delete a backup file.",
10406 "method" : "DELETE",
10407 "name" : "delete",
10408 "parameters" : {
10409 "additionalProperties" : 0,
10410 "properties" : {
10411 "filename" : {
10412 "description" : "The backup file name.",
10413 "maxLength" : 256,
10414 "minLength" : 4,
10415 "pattern" : "pmg-backup_[0-9A-Za-z_-]+\\.tgz",
10416 "type" : "string"
10417 },
10418 "node" : {
10419 "description" : "The cluster node name.",
10420 "format" : "pve-node",
10421 "type" : "string",
10422 "typetext" : "<string>"
10423 }
10424 }
10425 },
10426 "permissions" : {
10427 "check" : [
10428 "admin"
10429 ]
10430 },
10431 "protected" : 1,
10432 "proxyto" : "node",
10433 "returns" : {
10434 "type" : "null"
10435 }
10436 },
10437 "GET" : {
10438 "description" : "Download a backup file.",
10439 "download" : 1,
10440 "method" : "GET",
10441 "name" : "download",
10442 "parameters" : {
10443 "additionalProperties" : 0,
10444 "properties" : {
10445 "filename" : {
10446 "description" : "The backup file name.",
10447 "maxLength" : 256,
10448 "minLength" : 4,
10449 "pattern" : "pmg-backup_[0-9A-Za-z_-]+\\.tgz",
10450 "type" : "string"
10451 },
10452 "node" : {
10453 "description" : "The cluster node name.",
10454 "format" : "pve-node",
10455 "type" : "string",
10456 "typetext" : "<string>"
10457 }
10458 }
10459 },
10460 "permissions" : {
10461 "check" : [
10462 "admin"
10463 ]
10464 },
10465 "protected" : 1,
10466 "proxyto" : "node",
10467 "returns" : {
10468 "type" : "string"
10469 }
10470 },
10471 "POST" : {
10472 "description" : "Restore the system configuration.",
10473 "method" : "POST",
10474 "name" : "restore",
10475 "parameters" : {
10476 "additionalProperties" : 0,
10477 "properties" : {
10478 "config" : {
10479 "default" : 0,
10480 "description" : "Restore system configuration.",
10481 "optional" : 1,
10482 "type" : "boolean",
10483 "typetext" : "<boolean>"
10484 },
10485 "database" : {
10486 "default" : 1,
10487 "description" : "Restore the rule database. This is the default.",
10488 "optional" : 1,
10489 "type" : "boolean",
10490 "typetext" : "<boolean>"
10491 },
10492 "filename" : {
10493 "description" : "The backup file name.",
10494 "maxLength" : 256,
10495 "minLength" : 4,
10496 "pattern" : "pmg-backup_[0-9A-Za-z_-]+\\.tgz",
10497 "type" : "string"
10498 },
10499 "node" : {
10500 "description" : "The cluster node name.",
10501 "format" : "pve-node",
10502 "type" : "string",
10503 "typetext" : "<string>"
10504 },
10505 "statistic" : {
10506 "default" : 0,
10507 "description" : "Restore statistic databases. Only considered when you restore the 'database'.",
10508 "optional" : 1,
10509 "type" : "boolean",
10510 "typetext" : "<boolean>"
10511 }
10512 }
10513 },
10514 "permissions" : {
10515 "check" : [
10516 "admin"
10517 ]
10518 },
10519 "protected" : 1,
10520 "proxyto" : "node",
10521 "returns" : {
10522 "type" : "string"
10523 }
10524 }
10525 },
10526 "leaf" : 1,
10527 "path" : "/nodes/{node}/backup/{filename}",
10528 "text" : "{filename}"
10529 }
10530 ],
10531 "info" : {
10532 "GET" : {
10533 "description" : "List all stored backups (files named proxmox-backup_{DATE}.tgz).",
10534 "method" : "GET",
10535 "name" : "list",
10536 "parameters" : {
10537 "additionalProperties" : 0,
10538 "properties" : {
10539 "node" : {
10540 "description" : "The cluster node name.",
10541 "format" : "pve-node",
10542 "type" : "string",
10543 "typetext" : "<string>"
10544 }
10545 }
10546 },
10547 "permissions" : {
10548 "check" : [
10549 "admin",
10550 "audit"
10551 ]
10552 },
10553 "protected" : 1,
10554 "proxyto" : "node",
10555 "returns" : {
10556 "items" : {
10557 "properties" : {
10558 "filename" : {
10559 "description" : "The backup file name.",
10560 "maxLength" : 256,
10561 "minLength" : 4,
10562 "pattern" : "pmg-backup_[0-9A-Za-z_-]+\\.tgz",
10563 "type" : "string"
10564 },
10565 "size" : {
10566 "description" : "Size of backup file in bytes.",
10567 "type" : "integer"
10568 },
10569 "timestamp" : {
10570 "description" : "Backup timestamp (Unix epoch).",
10571 "type" : "integer"
10572 }
10573 },
10574 "type" : "object"
10575 },
10576 "links" : [
10577 {
10578 "href" : "{filename}",
10579 "rel" : "child"
10580 }
10581 ],
10582 "type" : "array"
10583 }
10584 },
10585 "POST" : {
10586 "description" : "Backup the system configuration.",
10587 "method" : "POST",
10588 "name" : "backup",
10589 "parameters" : {
10590 "additionalProperties" : 0,
10591 "properties" : {
10592 "node" : {
10593 "description" : "The cluster node name.",
10594 "format" : "pve-node",
10595 "type" : "string",
10596 "typetext" : "<string>"
10597 },
10598 "statistic" : {
10599 "default" : 1,
10600 "description" : "Backup statistic databases.",
10601 "optional" : 1,
10602 "type" : "boolean",
10603 "typetext" : "<boolean>"
10604 }
10605 }
10606 },
10607 "permissions" : {
10608 "check" : [
10609 "admin"
10610 ]
10611 },
10612 "protected" : 1,
10613 "proxyto" : "node",
10614 "returns" : {
10615 "type" : "string"
10616 }
10617 }
10618 },
10619 "leaf" : 0,
10620 "path" : "/nodes/{node}/backup",
10621 "text" : "backup"
10622 },
9fda36b0
DM
10623 {
10624 "info" : {
10625 "GET" : {
10626 "description" : "Read node RRD statistics",
10627 "method" : "GET",
10628 "name" : "rrddata",
10629 "parameters" : {
10630 "additionalProperties" : 0,
10631 "properties" : {
10632 "cf" : {
10633 "description" : "The RRD consolidation function",
10634 "enum" : [
10635 "AVERAGE",
10636 "MAX"
10637 ],
10638 "optional" : 1,
10639 "type" : "string"
10640 },
10641 "node" : {
10642 "description" : "The cluster node name.",
10643 "format" : "pve-node",
10644 "type" : "string",
10645 "typetext" : "<string>"
10646 },
10647 "timeframe" : {
10648 "description" : "Specify the time frame you are interested in.",
10649 "enum" : [
10650 "hour",
10651 "day",
10652 "week",
10653 "month",
10654 "year"
10655 ],
10656 "type" : "string"
10657 }
10658 }
10659 },
732d76e1
DM
10660 "permissions" : {
10661 "check" : [
10662 "admin",
10663 "audit"
10664 ]
10665 },
9fda36b0
DM
10666 "protected" : 1,
10667 "proxyto" : "node",
10668 "returns" : {
10669 "items" : {
10670 "properties" : {},
10671 "type" : "object"
10672 },
10673 "type" : "array"
10674 }
10675 }
10676 },
10677 "leaf" : 1,
10678 "path" : "/nodes/{node}/rrddata",
10679 "text" : "rrddata"
10680 },
10681 {
10682 "info" : {
10683 "GET" : {
10684 "description" : "Read system log",
10685 "method" : "GET",
10686 "name" : "syslog",
10687 "parameters" : {
10688 "additionalProperties" : 0,
10689 "properties" : {
10690 "limit" : {
10691 "minimum" : 0,
10692 "optional" : 1,
10693 "type" : "integer",
10694 "typetext" : "<integer> (0 - N)"
10695 },
10696 "node" : {
10697 "description" : "The cluster node name.",
10698 "format" : "pve-node",
10699 "type" : "string",
10700 "typetext" : "<string>"
10701 },
10702 "service" : {
10703 "description" : "Service ID",
10704 "maxLength" : 128,
10705 "optional" : 1,
10706 "type" : "string",
10707 "typetext" : "<string>"
10708 },
10709 "since" : {
10710 "description" : "Display all log since this date-time string.",
10711 "optional" : 1,
10712 "pattern" : "^\\d{4}-\\d{2}-\\d{2}( \\d{2}:\\d{2}(:\\d{2})?)?$",
10713 "type" : "string"
10714 },
10715 "start" : {
10716 "minimum" : 0,
10717 "optional" : 1,
10718 "type" : "integer",
10719 "typetext" : "<integer> (0 - N)"
10720 },
10721 "until" : {
10722 "description" : "Display all log until this date-time string.",
10723 "optional" : 1,
10724 "pattern" : "^\\d{4}-\\d{2}-\\d{2}( \\d{2}:\\d{2}(:\\d{2})?)?$",
10725 "type" : "string"
10726 }
10727 }
10728 },
732d76e1
DM
10729 "permissions" : {
10730 "check" : [
10731 "admin",
10732 "audit"
10733 ]
10734 },
9fda36b0
DM
10735 "protected" : 1,
10736 "proxyto" : "node",
10737 "returns" : {
10738 "items" : {
10739 "properties" : {
10740 "n" : {
10741 "description" : "Line number",
10742 "type" : "integer"
10743 },
10744 "t" : {
10745 "description" : "Line text",
10746 "type" : "string"
10747 }
10748 },
10749 "type" : "object"
10750 },
10751 "type" : "array"
10752 }
10753 }
10754 },
10755 "leaf" : 1,
10756 "path" : "/nodes/{node}/syslog",
10757 "text" : "syslog"
10758 },
10759 {
10760 "info" : {
10761 "POST" : {
274b47fc 10762 "description" : "Creates a Terminal proxy.",
9fda36b0 10763 "method" : "POST",
274b47fc 10764 "name" : "termproxy",
9fda36b0
DM
10765 "parameters" : {
10766 "additionalProperties" : 0,
10767 "properties" : {
10768 "node" : {
10769 "description" : "The cluster node name.",
10770 "format" : "pve-node",
10771 "type" : "string",
10772 "typetext" : "<string>"
10773 },
10774 "upgrade" : {
10775 "default" : 0,
10776 "description" : "Run 'apt-get dist-upgrade' instead of normal shell.",
10777 "optional" : 1,
10778 "type" : "boolean",
10779 "typetext" : "<boolean>"
9fda36b0
DM
10780 }
10781 }
10782 },
274b47fc
DM
10783 "permissions" : {
10784 "check" : [
10785 "admin"
10786 ]
10787 },
9fda36b0
DM
10788 "protected" : 1,
10789 "returns" : {
10790 "additionalProperties" : 0,
10791 "properties" : {
10792 "port" : {
10793 "type" : "integer"
10794 },
10795 "ticket" : {
10796 "type" : "string"
10797 },
10798 "upid" : {
10799 "type" : "string"
10800 },
10801 "user" : {
10802 "type" : "string"
10803 }
10804 }
10805 }
10806 }
10807 },
10808 "leaf" : 1,
274b47fc
DM
10809 "path" : "/nodes/{node}/termproxy",
10810 "text" : "termproxy"
9fda36b0
DM
10811 },
10812 {
10813 "info" : {
10814 "GET" : {
10815 "description" : "Opens a weksocket for VNC traffic.",
10816 "method" : "GET",
10817 "name" : "vncwebsocket",
10818 "parameters" : {
10819 "additionalProperties" : 0,
10820 "properties" : {
10821 "node" : {
10822 "description" : "The cluster node name.",
10823 "format" : "pve-node",
10824 "type" : "string",
10825 "typetext" : "<string>"
10826 },
10827 "port" : {
10828 "description" : "Port number returned by previous vncproxy call.",
10829 "maximum" : 5999,
10830 "minimum" : 5900,
10831 "type" : "integer",
10832 "typetext" : "<integer> (5900 - 5999)"
10833 },
10834 "vncticket" : {
10835 "description" : "Ticket from previous call to vncproxy.",
10836 "maxLength" : 512,
10837 "type" : "string",
10838 "typetext" : "<string>"
10839 }
10840 }
10841 },
274b47fc
DM
10842 "permissions" : {
10843 "check" : [
10844 "admin"
10845 ]
10846 },
9fda36b0
DM
10847 "returns" : {
10848 "properties" : {
10849 "port" : {
10850 "type" : "string"
10851 }
10852 },
10853 "type" : "object"
10854 }
10855 }
10856 },
10857 "leaf" : 1,
10858 "path" : "/nodes/{node}/vncwebsocket",
10859 "text" : "vncwebsocket"
10860 },
10861 {
10862 "info" : {
10863 "GET" : {
10864 "description" : "Read DNS settings.",
10865 "method" : "GET",
10866 "name" : "dns",
10867 "parameters" : {
10868 "additionalProperties" : 0,
10869 "properties" : {
10870 "node" : {
10871 "description" : "The cluster node name.",
10872 "format" : "pve-node",
10873 "type" : "string",
10874 "typetext" : "<string>"
10875 }
10876 }
10877 },
732d76e1
DM
10878 "permissions" : {
10879 "check" : [
10880 "admin",
10881 "audit"
10882 ]
10883 },
9fda36b0
DM
10884 "proxyto" : "node",
10885 "returns" : {
10886 "additionalProperties" : 0,
10887 "properties" : {
10888 "dns1" : {
10889 "description" : "First name server IP address.",
10890 "optional" : 1,
10891 "type" : "string"
10892 },
10893 "dns2" : {
10894 "description" : "Second name server IP address.",
10895 "optional" : 1,
10896 "type" : "string"
10897 },
10898 "dns3" : {
10899 "description" : "Third name server IP address.",
10900 "optional" : 1,
10901 "type" : "string"
10902 },
10903 "search" : {
10904 "description" : "Search domain for host-name lookup.",
10905 "optional" : 1,
10906 "type" : "string"
10907 }
10908 },
10909 "type" : "object"
10910 }
10911 },
10912 "PUT" : {
10913 "description" : "Write DNS settings.",
10914 "method" : "PUT",
10915 "name" : "update_dns",
10916 "parameters" : {
10917 "additionalProperties" : 0,
10918 "properties" : {
10919 "dns1" : {
10920 "description" : "First name server IP address.",
10921 "format" : "ip",
10922 "optional" : 1,
10923 "type" : "string",
10924 "typetext" : "<string>"
10925 },
10926 "dns2" : {
10927 "description" : "Second name server IP address.",
10928 "format" : "ip",
10929 "optional" : 1,
10930 "type" : "string",
10931 "typetext" : "<string>"
10932 },
10933 "dns3" : {
10934 "description" : "Third name server IP address.",
10935 "format" : "ip",
10936 "optional" : 1,
10937 "type" : "string",
10938 "typetext" : "<string>"
10939 },
10940 "node" : {
10941 "description" : "The cluster node name.",
10942 "format" : "pve-node",
10943 "type" : "string",
10944 "typetext" : "<string>"
10945 },
10946 "search" : {
10947 "description" : "Search domain for host-name lookup.",
10948 "type" : "string",
10949 "typetext" : "<string>"
10950 }
10951 }
10952 },
10953 "protected" : 1,
10954 "proxyto" : "node",
10955 "returns" : {
10956 "type" : "null"
10957 }
10958 }
10959 },
10960 "leaf" : 1,
10961 "path" : "/nodes/{node}/dns",
10962 "text" : "dns"
10963 },
10964 {
10965 "info" : {
10966 "GET" : {
10967 "description" : "Read server time and time zone settings.",
10968 "method" : "GET",
10969 "name" : "time",
10970 "parameters" : {
10971 "additionalProperties" : 0,
10972 "properties" : {
10973 "node" : {
10974 "description" : "The cluster node name.",
10975 "format" : "pve-node",
10976 "type" : "string",
10977 "typetext" : "<string>"
10978 }
10979 }
10980 },
732d76e1
DM
10981 "permissions" : {
10982 "check" : [
10983 "admin",
10984 "audit"
10985 ]
10986 },
9fda36b0
DM
10987 "proxyto" : "node",
10988 "returns" : {
10989 "additionalProperties" : 0,
10990 "properties" : {
10991 "localtime" : {
10992 "description" : "Seconds since 1970-01-01 00:00:00 (local time)",
10993 "minimum" : 1297163644,
10994 "type" : "integer"
10995 },
10996 "time" : {
10997 "description" : "Seconds since 1970-01-01 00:00:00 UTC.",
10998 "minimum" : 1297163644,
10999 "type" : "integer"
11000 },
11001 "timezone" : {
11002 "description" : "Time zone",
11003 "type" : "string"
11004 }
11005 },
11006 "type" : "object"
11007 }
11008 },
11009 "PUT" : {
11010 "description" : "Set time zone.",
11011 "method" : "PUT",
11012 "name" : "set_timezone",
11013 "parameters" : {
11014 "additionalProperties" : 0,
11015 "properties" : {
11016 "node" : {
11017 "description" : "The cluster node name.",
11018 "format" : "pve-node",
11019 "type" : "string",
11020 "typetext" : "<string>"
11021 },
11022 "timezone" : {
11023 "description" : "Time zone. The file '/usr/share/zoneinfo/zone.tab' contains the list of valid names.",
11024 "type" : "string",
11025 "typetext" : "<string>"
11026 }
11027 }
11028 },
11029 "protected" : 1,
11030 "proxyto" : "node",
11031 "returns" : {
11032 "type" : "null"
11033 }
11034 }
11035 },
11036 "leaf" : 1,
11037 "path" : "/nodes/{node}/time",
11038 "text" : "time"
11039 },
11040 {
11041 "info" : {
11042 "GET" : {
11043 "description" : "Read server status. This is used by the cluster manager to test the node health.",
11044 "method" : "GET",
11045 "name" : "status",
11046 "parameters" : {
11047 "additionalProperties" : 0,
11048 "properties" : {
11049 "node" : {
11050 "description" : "The cluster node name.",
11051 "format" : "pve-node",
11052 "type" : "string",
11053 "typetext" : "<string>"
11054 }
11055 }
11056 },
11057 "protected" : 1,
11058 "proxyto" : "node",
11059 "returns" : {
11060 "additionalProperties" : 1,
11061 "properties" : {
11062 "insync" : {
11063 "description" : "Database is synced with other nodes.",
11064 "type" : "boolean"
11065 },
11066 "time" : {
11067 "description" : "Seconds since 1970-01-01 00:00:00 UTC.",
11068 "minimum" : 1297163644,
11069 "type" : "integer"
11070 },
11071 "uptime" : {
11072 "description" : "The uptime of the system in seconds.",
11073 "minimum" : 0,
11074 "type" : "integer"
11075 }
11076 },
11077 "type" : "object"
11078 }
274b47fc
DM
11079 },
11080 "POST" : {
11081 "description" : "Reboot or shutdown a node.",
11082 "method" : "POST",
11083 "name" : "node_cmd",
11084 "parameters" : {
11085 "additionalProperties" : 0,
11086 "properties" : {
11087 "command" : {
11088 "description" : "Specify the command.",
11089 "enum" : [
11090 "reboot",
11091 "shutdown"
11092 ],
11093 "type" : "string"
11094 },
11095 "node" : {
11096 "description" : "The cluster node name.",
11097 "format" : "pve-node",
11098 "type" : "string",
11099 "typetext" : "<string>"
11100 }
11101 }
11102 },
11103 "permissions" : {
11104 "check" : [
11105 "admin"
11106 ]
11107 },
11108 "protected" : 1,
11109 "proxyto" : "node",
11110 "returns" : {
11111 "type" : "null"
11112 }
9fda36b0
DM
11113 }
11114 },
11115 "leaf" : 1,
11116 "path" : "/nodes/{node}/status",
11117 "text" : "status"
11118 }
11119 ],
11120 "info" : {
11121 "GET" : {
11122 "description" : "Node index.",
11123 "method" : "GET",
11124 "name" : "index",
11125 "parameters" : {
11126 "additionalProperties" : 0,
11127 "properties" : {
11128 "node" : {
11129 "description" : "The cluster node name.",
11130 "format" : "pve-node",
11131 "type" : "string",
11132 "typetext" : "<string>"
11133 }
11134 }
11135 },
11136 "permissions" : {
11137 "user" : "all"
11138 },
11139 "returns" : {
11140 "items" : {
11141 "properties" : {},
11142 "type" : "object"
11143 },
11144 "links" : [
11145 {
11146 "href" : "{name}",
11147 "rel" : "child"
11148 }
11149 ],
11150 "type" : "array"
11151 }
11152 }
11153 },
11154 "leaf" : 0,
11155 "path" : "/nodes/{node}",
11156 "text" : "{node}"
11157 }
11158 ],
11159 "info" : {
11160 "GET" : {
11161 "description" : "Cluster node index.",
11162 "method" : "GET",
11163 "name" : "index",
11164 "parameters" : {
11165 "additionalProperties" : 0
11166 },
11167 "permissions" : {
11168 "user" : "all"
11169 },
11170 "returns" : {
11171 "items" : {
11172 "properties" : {},
11173 "type" : "object"
11174 },
11175 "links" : [
11176 {
11177 "href" : "{node}",
11178 "rel" : "child"
11179 }
11180 ],
11181 "type" : "array"
11182 }
11183 }
11184 },
11185 "leaf" : 0,
11186 "path" : "/nodes",
11187 "text" : "nodes"
11188 },
11189 {
11190 "children" : [
11191 {
11192 "children" : [
11193 {
11194 "info" : {
11195 "DELETE" : {
11196 "description" : "Delete a user.",
11197 "method" : "DELETE",
11198 "name" : "delete",
11199 "parameters" : {
11200 "additionalProperties" : 0,
11201 "properties" : {
11202 "userid" : {
11203 "description" : "User ID",
11204 "format" : "pmg-userid",
11205 "maxLength" : 64,
11206 "minLength" : 4,
11207 "type" : "string",
11208 "typetext" : "<string>"
11209 }
11210 }
11211 },
11212 "protected" : 1,
11213 "proxyto" : "master",
11214 "returns" : {
11215 "type" : "null"
11216 }
11217 },
11218 "GET" : {
11219 "description" : "Read User data.",
11220 "method" : "GET",
11221 "name" : "read",
11222 "parameters" : {
11223 "additionalProperties" : 0,
11224 "properties" : {
11225 "userid" : {
11226 "description" : "User ID",
11227 "format" : "pmg-userid",
11228 "maxLength" : 64,
11229 "minLength" : 4,
11230 "type" : "string",
11231 "typetext" : "<string>"
11232 }
11233 }
11234 },
11235 "protected" : 1,
11236 "proxyto" : "master",
11237 "returns" : {
11238 "properties" : {},
11239 "type" : "object"
11240 }
11241 },
11242 "PUT" : {
11243 "description" : "Update user data.",
11244 "method" : "PUT",
11245 "name" : "write",
11246 "parameters" : {
11247 "additionalProperties" : 0,
11248 "properties" : {
11249 "comment" : {
11250 "description" : "Comment.",
11251 "optional" : 1,
11252 "type" : "string",
11253 "typetext" : "<string>"
11254 },
11255 "crypt_pass" : {
11256 "description" : "Encrypted password (see `man crypt`)",
11257 "optional" : 1,
11258 "pattern" : "\\$\\d\\$[a-zA-Z0-9\\.\\/]+\\$[a-zA-Z0-9\\.\\/]+",
11259 "type" : "string"
11260 },
11261 "delete" : {
11262 "description" : "A list of settings you want to delete.",
11263 "format" : "pve-configid-list",
11264 "maxLength" : 4096,
11265 "optional" : 1,
11266 "type" : "string",
11267 "typetext" : "<string>"
11268 },
11269 "email" : {
11270 "description" : "Users E-Mail address.",
11271 "format" : "email",
11272 "optional" : 1,
11273 "type" : "string",
11274 "typetext" : "<string>"
11275 },
11276 "enable" : {
11277 "default" : 0,
11278 "description" : "Flag to enable or disable the account.",
11279 "optional" : 1,
11280 "type" : "boolean",
11281 "typetext" : "<boolean>"
11282 },
11283 "expire" : {
11284 "default" : 0,
11285 "description" : "Account expiration date (seconds since epoch). '0' means no expiration date.",
11286 "minimum" : 0,
11287 "optional" : 1,
11288 "type" : "integer",
11289 "typetext" : "<integer> (0 - N)"
11290 },
11291 "firstname" : {
11292 "description" : "First name.",
11293 "maxLength" : 64,
11294 "optional" : 1,
11295 "type" : "string",
11296 "typetext" : "<string>"
11297 },
11298 "keys" : {
11299 "description" : "Keys for two factor auth (yubico).",
11300 "maxLength" : 128,
11301 "optional" : 1,
11302 "type" : "string",
11303 "typetext" : "<string>"
11304 },
11305 "lastname" : {
11306 "description" : "Last name.",
11307 "maxLength" : 64,
11308 "optional" : 1,
11309 "type" : "string",
11310 "typetext" : "<string>"
11311 },
11312 "password" : {
11313 "description" : "Password",
11314 "maxLength" : 32,
11315 "minLength" : 5,
11316 "optional" : 1,
11317 "type" : "string",
11318 "typetext" : "<string>"
11319 },
11320 "role" : {
11321 "description" : "User role. Role 'root' is reseved for the Unix Superuser.",
11322 "enum" : [
11323 "root",
11324 "admin",
11325 "qmanager",
11326 "audit"
11327 ],
11328 "optional" : 1,
11329 "type" : "string"
11330 },
11331 "userid" : {
11332 "description" : "User ID",
11333 "format" : "pmg-userid",
11334 "maxLength" : 64,
11335 "minLength" : 4,
11336 "type" : "string",
11337 "typetext" : "<string>"
11338 }
11339 }
11340 },
11341 "protected" : 1,
11342 "proxyto" : "master",
11343 "returns" : {
11344 "type" : "null"
11345 }
11346 }
11347 },
11348 "leaf" : 1,
11349 "path" : "/access/users/{userid}",
11350 "text" : "{userid}"
11351 }
11352 ],
11353 "info" : {
11354 "GET" : {
11355 "description" : "List users.",
11356 "method" : "GET",
11357 "name" : "index",
11358 "parameters" : {
11359 "additionalProperties" : 0
11360 },
11361 "permissions" : {
11362 "check" : [
11363 "admin"
11364 ]
11365 },
11366 "protected" : 1,
11367 "proxyto" : "master",
11368 "returns" : {
11369 "items" : {
11370 "properties" : {
11371 "comment" : {
11372 "optional" : 1,
11373 "type" : "string"
11374 },
11375 "enable" : {
11376 "type" : "boolean"
11377 },
11378 "role" : {
11379 "type" : "string"
11380 },
11381 "userid" : {
11382 "type" : "string"
11383 }
11384 },
11385 "type" : "object"
11386 },
11387 "links" : [
11388 {
11389 "href" : "{userid}",
11390 "rel" : "child"
11391 }
11392 ],
11393 "type" : "array"
11394 }
11395 },
11396 "POST" : {
11397 "description" : "Creat new user",
11398 "method" : "POST",
11399 "name" : "create",
11400 "parameters" : {
11401 "additionalProperties" : 0,
11402 "properties" : {
11403 "comment" : {
11404 "description" : "Comment.",
11405 "optional" : 1,
11406 "type" : "string",
11407 "typetext" : "<string>"
11408 },
11409 "crypt_pass" : {
11410 "description" : "Encrypted password (see `man crypt`)",
11411 "optional" : 1,
11412 "pattern" : "\\$\\d\\$[a-zA-Z0-9\\.\\/]+\\$[a-zA-Z0-9\\.\\/]+",
11413 "type" : "string"
11414 },
11415 "email" : {
11416 "description" : "Users E-Mail address.",
11417 "format" : "email",
11418 "optional" : 1,
11419 "type" : "string",
11420 "typetext" : "<string>"
11421 },
11422 "enable" : {
11423 "default" : 0,
11424 "description" : "Flag to enable or disable the account.",
11425 "optional" : 1,
11426 "type" : "boolean",
11427 "typetext" : "<boolean>"
11428 },
11429 "expire" : {
11430 "default" : 0,
11431 "description" : "Account expiration date (seconds since epoch). '0' means no expiration date.",
11432 "minimum" : 0,
11433 "optional" : 1,
11434 "type" : "integer",
11435 "typetext" : "<integer> (0 - N)"
11436 },
11437 "firstname" : {
11438 "description" : "First name.",
11439 "maxLength" : 64,
11440 "optional" : 1,
11441 "type" : "string",
11442 "typetext" : "<string>"
a55e94a6 11443 },
9fda36b0
DM
11444 "keys" : {
11445 "description" : "Keys for two factor auth (yubico).",
11446 "maxLength" : 128,
11447 "optional" : 1,
11448 "type" : "string",
11449 "typetext" : "<string>"
11450 },
11451 "lastname" : {
11452 "description" : "Last name.",
11453 "maxLength" : 64,
11454 "optional" : 1,
11455 "type" : "string",
11456 "typetext" : "<string>"
11457 },
11458 "password" : {
11459 "description" : "Password",
11460 "maxLength" : 32,
11461 "minLength" : 5,
11462 "optional" : 1,
11463 "type" : "string",
11464 "typetext" : "<string>"
11465 },
11466 "role" : {
11467 "description" : "User role. Role 'root' is reseved for the Unix Superuser.",
11468 "enum" : [
11469 "root",
11470 "admin",
11471 "qmanager",
11472 "audit"
a55e94a6 11473 ],
9fda36b0
DM
11474 "type" : "string"
11475 },
11476 "userid" : {
11477 "description" : "User ID",
11478 "format" : "pmg-userid",
11479 "maxLength" : 64,
11480 "minLength" : 4,
11481 "type" : "string",
11482 "typetext" : "<string>"
a55e94a6
DM
11483 }
11484 }
11485 },
9fda36b0
DM
11486 "protected" : 1,
11487 "proxyto" : "master",
11488 "returns" : {
11489 "type" : "null"
11490 }
11491 }
11492 },
11493 "leaf" : 0,
11494 "path" : "/access/users",
11495 "text" : "users"
11496 },
11497 {
11498 "info" : {
11499 "GET" : {
11500 "description" : "Dummy. Useful for formaters which want to priovde a login page.",
11501 "method" : "GET",
11502 "name" : "get_ticket",
11503 "parameters" : {
11504 "additionalProperties" : 0
11505 },
11506 "permissions" : {
11507 "user" : "world"
11508 },
11509 "returns" : {
11510 "type" : "null"
11511 }
a55e94a6 11512 },
9fda36b0
DM
11513 "POST" : {
11514 "description" : "Create or verify authentication ticket.",
11515 "method" : "POST",
11516 "name" : "create_ticket",
11517 "parameters" : {
11518 "additionalProperties" : 0,
11519 "properties" : {
11520 "otp" : {
11521 "description" : "One-time password for Two-factor authentication.",
11522 "optional" : 1,
11523 "type" : "string",
11524 "typetext" : "<string>"
410dc2c9 11525 },
9fda36b0
DM
11526 "password" : {
11527 "description" : "The secret password. This can also be a valid ticket.",
11528 "type" : "string",
11529 "typetext" : "<string>"
11530 },
274b47fc
DM
11531 "path" : {
11532 "description" : "Verify ticket, and check if user have access on 'path'",
11533 "maxLength" : 64,
11534 "optional" : 1,
11535 "type" : "string",
11536 "typetext" : "<string>"
11537 },
9fda36b0
DM
11538 "realm" : {
11539 "description" : "You can optionally pass the realm using this parameter. Normally the realm is simply added to the username <username>@<relam>.",
732d76e1
DM
11540 "enum" : [
11541 "pam",
11542 "pmg",
11543 "quarantine"
11544 ],
9fda36b0
DM
11545 "maxLength" : 32,
11546 "optional" : 1,
732d76e1 11547 "type" : "string"
9fda36b0
DM
11548 },
11549 "username" : {
11550 "description" : "User name",
11551 "maxLength" : 64,
11552 "type" : "string",
11553 "typetext" : "<string>"
11554 }
11555 }
11556 },
11557 "permissions" : {
11558 "description" : "You need to pass valid credientials.",
11559 "user" : "world"
11560 },
11561 "protected" : 1,
11562 "returns" : {
11563 "properties" : {
11564 "CSRFPreventionToken" : {
11565 "optional" : 1,
11566 "type" : "string"
11567 },
11568 "role" : {
11569 "optional" : 1,
11570 "type" : "string"
11571 },
11572 "ticket" : {
11573 "optional" : 1,
11574 "type" : "string"
11575 },
11576 "username" : {
11577 "type" : "string"
11578 }
11579 },
11580 "type" : "object"
11581 }
11582 }
11583 },
11584 "leaf" : 1,
11585 "path" : "/access/ticket",
11586 "text" : "ticket"
11587 },
11588 {
11589 "info" : {
11590 "PUT" : {
11591 "description" : "Change user password.",
11592 "method" : "PUT",
11593 "name" : "change_passsword",
11594 "parameters" : {
11595 "additionalProperties" : 0,
11596 "properties" : {
11597 "password" : {
11598 "description" : "The new password.",
11599 "maxLength" : 64,
11600 "minLength" : 5,
11601 "type" : "string",
11602 "typetext" : "<string>"
11603 },
11604 "userid" : {
11605 "description" : "User ID",
11606 "format" : "pmg-userid",
11607 "maxLength" : 64,
11608 "minLength" : 4,
11609 "type" : "string",
11610 "typetext" : "<string>"
410dc2c9
DM
11611 }
11612 }
11613 },
9fda36b0
DM
11614 "permissions" : {
11615 "description" : "Each user is allowed to change his own password. Only root can change the password of another user.",
11616 "user" : "all"
11617 },
11618 "protected" : 1,
11619 "returns" : {
11620 "type" : "null"
11621 }
11622 }
11623 },
11624 "leaf" : 1,
11625 "path" : "/access/password",
11626 "text" : "password"
11627 }
11628 ],
11629 "info" : {
11630 "GET" : {
11631 "description" : "Directory index.",
11632 "method" : "GET",
11633 "name" : "index",
11634 "parameters" : {
11635 "additionalProperties" : 0
11636 },
11637 "permissions" : {
11638 "user" : "all"
11639 },
11640 "returns" : {
11641 "items" : {
11642 "properties" : {
11643 "subdir" : {
11644 "type" : "string"
11645 }
11646 },
11647 "type" : "object"
410dc2c9 11648 },
9fda36b0
DM
11649 "links" : [
11650 {
11651 "href" : "{subdir}",
11652 "rel" : "child"
11653 }
11654 ],
11655 "type" : "array"
11656 }
11657 }
11658 },
11659 "leaf" : 0,
11660 "path" : "/access",
11661 "text" : "access"
11662 },
11663 {
11664 "children" : [
11665 {
11666 "children" : [
410dc2c9
DM
11667 {
11668 "info" : {
9fda36b0
DM
11669 "DELETE" : {
11670 "description" : "Delete user whitelist entries.",
11671 "method" : "DELETE",
11672 "name" : "whitelist_delete",
410dc2c9
DM
11673 "parameters" : {
11674 "additionalProperties" : 0,
11675 "properties" : {
9fda36b0
DM
11676 "address" : {
11677 "description" : "The address you want to remove.",
11678 "maxLength" : 512,
11679 "minLength" : 3,
11680 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
11681 "type" : "string"
410dc2c9 11682 },
9fda36b0
DM
11683 "pmail" : {
11684 "description" : "List entries for the user with this primary email address. Quarantine users cannot speficy this parameter, but it is required for all other roles.",
11685 "format" : "email",
d7cd791b
DM
11686 "optional" : 1,
11687 "type" : "string",
11688 "typetext" : "<string>"
410dc2c9
DM
11689 }
11690 }
11691 },
9fda36b0
DM
11692 "permissions" : {
11693 "check" : [
11694 "admin",
11695 "qmanager",
11696 "audit",
11697 "quser"
11698 ]
11699 },
410dc2c9 11700 "protected" : 1,
410dc2c9 11701 "returns" : {
9fda36b0 11702 "type" : "null"
410dc2c9
DM
11703 }
11704 }
11705 },
11706 "leaf" : 1,
9fda36b0
DM
11707 "path" : "/quarantine/whitelist/{address}",
11708 "text" : "{address}"
11709 }
11710 ],
11711 "info" : {
11712 "GET" : {
11713 "description" : "Show user whitelist.",
11714 "method" : "GET",
11715 "name" : "whitelist",
11716 "parameters" : {
11717 "additionalProperties" : 0,
11718 "properties" : {
11719 "pmail" : {
11720 "description" : "List entries for the user with this primary email address. Quarantine users cannot speficy this parameter, but it is required for all other roles.",
11721 "format" : "email",
11722 "optional" : 1,
11723 "type" : "string",
11724 "typetext" : "<string>"
11725 }
11726 }
11727 },
11728 "permissions" : {
11729 "check" : [
11730 "admin",
11731 "qmanager",
11732 "audit",
11733 "quser"
11734 ]
11735 },
11736 "returns" : {
11737 "items" : {
11738 "properties" : {
11739 "address" : {
11740 "type" : "string"
410dc2c9
DM
11741 }
11742 },
9fda36b0
DM
11743 "type" : "object"
11744 },
11745 "type" : "array"
11746 }
11747 },
11748 "POST" : {
11749 "description" : "Add user whitelist entries.",
11750 "method" : "POST",
11751 "name" : "whitelist_add",
11752 "parameters" : {
11753 "additionalProperties" : 0,
11754 "properties" : {
11755 "address" : {
11756 "description" : "The address you want to add.",
11757 "maxLength" : 512,
11758 "minLength" : 3,
11759 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
11760 "type" : "string"
11761 },
11762 "pmail" : {
11763 "description" : "List entries for the user with this primary email address. Quarantine users cannot speficy this parameter, but it is required for all other roles.",
11764 "format" : "email",
11765 "optional" : 1,
11766 "type" : "string",
11767 "typetext" : "<string>"
410dc2c9
DM
11768 }
11769 }
11770 },
9fda36b0
DM
11771 "permissions" : {
11772 "check" : [
11773 "admin",
11774 "qmanager",
11775 "audit",
11776 "quser"
11777 ]
11778 },
11779 "protected" : 1,
11780 "returns" : {
11781 "type" : "null"
11782 }
11783 }
11784 },
11785 "leaf" : 0,
11786 "path" : "/quarantine/whitelist",
11787 "text" : "whitelist"
11788 },
11789 {
11790 "children" : [
11791 {
11792 "info" : {
11793 "DELETE" : {
11794 "description" : "Delete user blacklist entries.",
11795 "method" : "DELETE",
11796 "name" : "blacklist_delete",
11797 "parameters" : {
11798 "additionalProperties" : 0,
11799 "properties" : {
11800 "address" : {
11801 "description" : "The address you want to remove.",
410dc2c9 11802 "maxLength" : 512,
9fda36b0
DM
11803 "minLength" : 3,
11804 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
11805 "type" : "string"
11806 },
11807 "pmail" : {
11808 "description" : "List entries for the user with this primary email address. Quarantine users cannot speficy this parameter, but it is required for all other roles.",
11809 "format" : "email",
11810 "optional" : 1,
410dc2c9
DM
11811 "type" : "string",
11812 "typetext" : "<string>"
11813 }
11814 }
11815 },
9fda36b0
DM
11816 "permissions" : {
11817 "check" : [
11818 "admin",
11819 "qmanager",
11820 "audit",
11821 "quser"
11822 ]
11823 },
11824 "protected" : 1,
410dc2c9 11825 "returns" : {
9fda36b0 11826 "type" : "null"
410dc2c9
DM
11827 }
11828 }
11829 },
11830 "leaf" : 1,
9fda36b0
DM
11831 "path" : "/quarantine/blacklist/{address}",
11832 "text" : "{address}"
11833 }
11834 ],
11835 "info" : {
11836 "GET" : {
11837 "description" : "Show user blacklist.",
11838 "method" : "GET",
11839 "name" : "blacklist",
11840 "parameters" : {
11841 "additionalProperties" : 0,
11842 "properties" : {
11843 "pmail" : {
11844 "description" : "List entries for the user with this primary email address. Quarantine users cannot speficy this parameter, but it is required for all other roles.",
11845 "format" : "email",
11846 "optional" : 1,
11847 "type" : "string",
11848 "typetext" : "<string>"
11849 }
11850 }
11851 },
11852 "permissions" : {
11853 "check" : [
11854 "admin",
11855 "qmanager",
11856 "audit",
11857 "quser"
11858 ]
11859 },
11860 "returns" : {
11861 "items" : {
11862 "properties" : {
11863 "address" : {
11864 "type" : "string"
410dc2c9
DM
11865 }
11866 },
9fda36b0
DM
11867 "type" : "object"
11868 },
11869 "type" : "array"
11870 }
11871 },
11872 "POST" : {
11873 "description" : "Add user blacklist entries.",
11874 "method" : "POST",
11875 "name" : "blacklist_add",
11876 "parameters" : {
11877 "additionalProperties" : 0,
11878 "properties" : {
11879 "address" : {
11880 "description" : "The address you want to add.",
11881 "maxLength" : 512,
11882 "minLength" : 3,
11883 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
11884 "type" : "string"
11885 },
11886 "pmail" : {
11887 "description" : "List entries for the user with this primary email address. Quarantine users cannot speficy this parameter, but it is required for all other roles.",
11888 "format" : "email",
11889 "optional" : 1,
11890 "type" : "string",
11891 "typetext" : "<string>"
11892 }
11893 }
11894 },
11895 "permissions" : {
11896 "check" : [
11897 "admin",
11898 "qmanager",
11899 "audit",
11900 "quser"
11901 ]
11902 },
11903 "protected" : 1,
11904 "returns" : {
11905 "type" : "null"
11906 }
11907 }
11908 },
11909 "leaf" : 0,
11910 "path" : "/quarantine/blacklist",
11911 "text" : "blacklist"
11912 },
11913 {
11914 "info" : {
11915 "GET" : {
11916 "description" : "Get a list of receivers of spam in the given timespan (Default the last 24 hours).",
11917 "method" : "GET",
11918 "name" : "spamusers",
11919 "parameters" : {
11920 "additionalProperties" : 0,
11921 "properties" : {
11922 "endtime" : {
11923 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
11924 "minimum" : 1,
11925 "optional" : 1,
11926 "type" : "integer",
11927 "typetext" : "<integer> (1 - N)"
11928 },
11929 "starttime" : {
11930 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
11931 "minimum" : 0,
11932 "optional" : 1,
11933 "type" : "integer",
11934 "typetext" : "<integer> (0 - N)"
410dc2c9 11935 }
9fda36b0
DM
11936 }
11937 },
11938 "permissions" : {
11939 "check" : [
11940 "admin",
11941 "qmanager",
11942 "audit"
11943 ]
11944 },
11945 "returns" : {
11946 "items" : {
11947 "properties" : {
11948 "mail" : {
11949 "description" : "the receiving email",
11950 "type" : "string"
11951 }
11952 },
11953 "type" : "object"
410dc2c9 11954 },
9fda36b0
DM
11955 "type" : "array"
11956 }
11957 }
11958 },
11959 "leaf" : 1,
11960 "path" : "/quarantine/spamusers",
11961 "text" : "spamusers"
11962 },
11963 {
11964 "info" : {
11965 "GET" : {
11966 "description" : "Get Spam Quarantine Status",
11967 "method" : "GET",
11968 "name" : "spamstatus",
11969 "parameters" : {
11970 "additionalProperties" : 0
11971 },
11972 "permissions" : {
11973 "check" : [
11974 "admin",
11975 "qmanager",
11976 "audit"
11977 ]
11978 },
11979 "returns" : {
11980 "properties" : {
11981 "avgbytes" : {
11982 "description" : "Average size of stored mails in bytes.",
11983 "type" : "number"
11984 },
11985 "avgspam" : {
11986 "description" : "Average spam level.",
11987 "type" : "number"
11988 },
11989 "count" : {
11990 "description" : "Number of stored mails.",
11991 "type" : "integer"
11992 },
11993 "mbytes" : {
11994 "description" : "Estimated disk space usage in MByte.",
11995 "type" : "number"
11996 }
11997 },
11998 "type" : "object"
11999 }
12000 }
12001 },
12002 "leaf" : 1,
12003 "path" : "/quarantine/spamstatus",
12004 "text" : "spamstatus"
12005 },
12006 {
12007 "info" : {
12008 "GET" : {
12009 "description" : "Get a list of users with whitelist/blacklist setttings.",
12010 "method" : "GET",
12011 "name" : "quarusers",
12012 "parameters" : {
12013 "additionalProperties" : 0
12014 },
12015 "permissions" : {
12016 "check" : [
12017 "admin",
12018 "qmanager",
12019 "audit"
12020 ]
12021 },
12022 "returns" : {
12023 "items" : {
12024 "properties" : {
12025 "mail" : {
12026 "description" : "the receiving email",
12027 "type" : "string"
410dc2c9
DM
12028 }
12029 },
9fda36b0
DM
12030 "type" : "object"
12031 },
12032 "type" : "array"
12033 }
12034 }
12035 },
12036 "leaf" : 1,
12037 "path" : "/quarantine/quarusers",
12038 "text" : "quarusers"
12039 },
12040 {
12041 "info" : {
12042 "GET" : {
12043 "description" : "Get a list of quarantined spam mails in the given timeframe (default the last 24 hours) for the given user.",
12044 "method" : "GET",
12045 "name" : "spam",
12046 "parameters" : {
12047 "additionalProperties" : 0,
12048 "properties" : {
12049 "endtime" : {
12050 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
12051 "minimum" : 1,
12052 "optional" : 1,
12053 "type" : "integer",
12054 "typetext" : "<integer> (1 - N)"
12055 },
12056 "pmail" : {
12057 "description" : "List entries for the user with this primary email address. Quarantine users cannot speficy this parameter, but it is required for all other roles.",
12058 "format" : "email",
12059 "optional" : 1,
12060 "type" : "string",
12061 "typetext" : "<string>"
12062 },
12063 "starttime" : {
12064 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
12065 "minimum" : 0,
12066 "optional" : 1,
12067 "type" : "integer",
12068 "typetext" : "<integer> (0 - N)"
410dc2c9
DM
12069 }
12070 }
12071 },
9fda36b0
DM
12072 "permissions" : {
12073 "check" : [
12074 "admin",
12075 "qmanager",
12076 "audit",
12077 "quser"
12078 ]
12079 },
12080 "returns" : {
12081 "items" : {
12082 "properties" : {
12083 "bytes" : {
12084 "description" : "Size of raw email.",
12085 "type" : "integer"
12086 },
12087 "envelope_sender" : {
12088 "description" : "SMTP envelope sender.",
12089 "type" : "string"
12090 },
12091 "from" : {
12092 "description" : "Header 'From' field.",
12093 "type" : "string"
12094 },
12095 "id" : {
12096 "description" : "Unique ID",
12097 "type" : "string"
12098 },
12099 "receiver" : {
12100 "description" : "Receiver email address",
12101 "type" : "string"
12102 },
12103 "sender" : {
12104 "description" : "Header 'Sender' field.",
12105 "optional" : 1,
12106 "type" : "string"
12107 },
12108 "spamlevel" : {
12109 "description" : "Spam score.",
12110 "type" : "number"
12111 },
12112 "subject" : {
12113 "description" : "Header 'Subject' field.",
12114 "type" : "string"
12115 },
12116 "time" : {
12117 "description" : "Receive time stamp",
12118 "type" : "integer"
410dc2c9
DM
12119 }
12120 },
9fda36b0 12121 "type" : "object"
410dc2c9 12122 },
9fda36b0
DM
12123 "type" : "array"
12124 }
12125 }
12126 },
12127 "leaf" : 1,
12128 "path" : "/quarantine/spam",
12129 "text" : "spam"
12130 },
12131 {
12132 "info" : {
12133 "GET" : {
12134 "description" : "Get a list of quarantined virus mails in the given timeframe (default the last 24 hours).",
12135 "method" : "GET",
12136 "name" : "virus",
12137 "parameters" : {
12138 "additionalProperties" : 0,
12139 "properties" : {
12140 "endtime" : {
12141 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
12142 "minimum" : 1,
12143 "optional" : 1,
12144 "type" : "integer",
12145 "typetext" : "<integer> (1 - N)"
410dc2c9 12146 },
9fda36b0
DM
12147 "starttime" : {
12148 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
12149 "minimum" : 0,
12150 "optional" : 1,
12151 "type" : "integer",
12152 "typetext" : "<integer> (0 - N)"
410dc2c9
DM
12153 }
12154 }
12155 },
9fda36b0
DM
12156 "permissions" : {
12157 "check" : [
12158 "admin",
12159 "qmanager",
12160 "audit"
12161 ]
12162 },
12163 "returns" : {
12164 "items" : {
12165 "properties" : {
12166 "bytes" : {
12167 "description" : "Size of raw email.",
12168 "type" : "integer"
12169 },
12170 "envelope_sender" : {
12171 "description" : "SMTP envelope sender.",
12172 "type" : "string"
12173 },
12174 "from" : {
12175 "description" : "Header 'From' field.",
12176 "type" : "string"
12177 },
12178 "id" : {
12179 "description" : "Unique ID",
12180 "type" : "string"
12181 },
12182 "receiver" : {
12183 "description" : "Receiver email address",
12184 "type" : "string"
12185 },
12186 "sender" : {
12187 "description" : "Header 'Sender' field.",
12188 "optional" : 1,
12189 "type" : "string"
12190 },
12191 "subject" : {
12192 "description" : "Header 'Subject' field.",
12193 "type" : "string"
12194 },
12195 "time" : {
12196 "description" : "Receive time stamp",
12197 "type" : "integer"
12198 },
12199 "virusname" : {
12200 "description" : "Virus name.",
12201 "type" : "string"
d7cd791b
DM
12202 }
12203 },
9fda36b0
DM
12204 "type" : "object"
12205 },
12206 "type" : "array"
12207 }
12208 }
12209 },
12210 "leaf" : 1,
12211 "path" : "/quarantine/virus",
12212 "text" : "virus"
12213 },
12214 {
12215 "info" : {
12216 "GET" : {
12217 "description" : "Get Virus Quarantine Status",
12218 "method" : "GET",
12219 "name" : "virusstatus",
12220 "parameters" : {
12221 "additionalProperties" : 0
12222 },
12223 "permissions" : {
12224 "check" : [
12225 "admin",
12226 "qmanager",
12227 "audit"
12228 ]
12229 },
12230 "returns" : {
12231 "properties" : {
12232 "avgbytes" : {
12233 "description" : "Average size of stored mails in bytes.",
12234 "type" : "number"
12235 },
12236 "count" : {
12237 "description" : "Number of stored mails.",
12238 "type" : "integer"
12239 },
12240 "mbytes" : {
12241 "description" : "Estimated disk space usage in MByte.",
12242 "type" : "number"
d7cd791b 12243 }
9fda36b0
DM
12244 },
12245 "type" : "object"
12246 }
d7cd791b 12247 }
9fda36b0
DM
12248 },
12249 "leaf" : 1,
12250 "path" : "/quarantine/virusstatus",
12251 "text" : "virusstatus"
12252 },
12253 {
d7cd791b
DM
12254 "info" : {
12255 "GET" : {
9fda36b0 12256 "description" : "Get email data. There is a special formatter called 'htmlmail' to get sanitized html view of the mail content (use the '/api2/htmlmail/quarantine/content' url).",
d7cd791b 12257 "method" : "GET",
9fda36b0 12258 "name" : "content",
d7cd791b
DM
12259 "parameters" : {
12260 "additionalProperties" : 0,
12261 "properties" : {
9fda36b0
DM
12262 "id" : {
12263 "description" : "Unique ID",
274b47fc
DM
12264 "maxLength" : 60,
12265 "pattern" : "C\\d+R\\d+T\\d+",
9fda36b0
DM
12266 "type" : "string"
12267 },
12268 "raw" : {
12269 "default" : 0,
12270 "description" : "Display 'raw' eml data. This is only used with the 'htmlmail' formatter.",
12271 "optional" : 1,
12272 "type" : "boolean",
12273 "typetext" : "<boolean>"
d7cd791b
DM
12274 }
12275 }
12276 },
12277 "permissions" : {
9fda36b0
DM
12278 "check" : [
12279 "admin",
12280 "qmanager",
12281 "audit",
12282 "quser"
12283 ]
d7cd791b
DM
12284 },
12285 "returns" : {
9fda36b0
DM
12286 "properties" : {
12287 "bytes" : {
12288 "description" : "Size of raw email.",
12289 "type" : "integer"
12290 },
12291 "content" : {
12292 "description" : "Raw email data (first 4096 bytes). Useful for preview. NOTE: The 'htmlmail' formatter displays the whole email.",
12293 "type" : "string"
12294 },
12295 "envelope_sender" : {
12296 "description" : "SMTP envelope sender.",
12297 "type" : "string"
12298 },
12299 "from" : {
12300 "description" : "Header 'From' field.",
12301 "type" : "string"
12302 },
12303 "header" : {
12304 "description" : "Raw email header data.",
12305 "type" : "string"
12306 },
12307 "id" : {
12308 "description" : "Unique ID",
12309 "type" : "string"
12310 },
12311 "receiver" : {
12312 "description" : "Receiver email address",
12313 "type" : "string"
12314 },
12315 "sender" : {
12316 "description" : "Header 'Sender' field.",
12317 "optional" : 1,
12318 "type" : "string"
12319 },
12320 "spaminfo" : {
12321 "description" : "Information about matched spam tests (name, score, desc, url).",
12322 "type" : "array"
12323 },
12324 "spamlevel" : {
12325 "description" : "Spam score.",
12326 "type" : "number"
12327 },
12328 "subject" : {
12329 "description" : "Header 'Subject' field.",
12330 "type" : "string"
12331 },
12332 "time" : {
12333 "description" : "Receive time stamp",
12334 "type" : "integer"
12335 }
d7cd791b 12336 },
9fda36b0
DM
12337 "type" : "object"
12338 }
12339 },
12340 "POST" : {
12341 "description" : "Execute quarantine actions.",
12342 "method" : "POST",
12343 "name" : "action",
12344 "parameters" : {
12345 "additionalProperties" : 0,
12346 "properties" : {
12347 "action" : {
12348 "description" : "Action - specify what you want to do with the mail.",
12349 "enum" : [
12350 "whitelist",
12351 "blacklist",
12352 "deliver",
12353 "delete"
12354 ],
12355 "type" : "string"
12356 },
12357 "id" : {
12358 "description" : "Unique ID",
274b47fc
DM
12359 "maxLength" : 60,
12360 "pattern" : "C\\d+R\\d+T\\d+",
9fda36b0 12361 "type" : "string"
410dc2c9 12362 }
9fda36b0
DM
12363 }
12364 },
12365 "permissions" : {
12366 "check" : [
12367 "admin",
12368 "qmanager",
12369 "quser"
12370 ]
12371 },
12372 "protected" : 1,
12373 "returns" : {
12374 "type" : "null"
410dc2c9
DM
12375 }
12376 }
12377 },
9fda36b0
DM
12378 "leaf" : 1,
12379 "path" : "/quarantine/content",
12380 "text" : "content"
410dc2c9
DM
12381 }
12382 ],
12383 "info" : {
12384 "GET" : {
9fda36b0 12385 "description" : "Directory index.",
410dc2c9
DM
12386 "method" : "GET",
12387 "name" : "index",
12388 "parameters" : {
12389 "additionalProperties" : 0
12390 },
12391 "permissions" : {
12392 "user" : "all"
12393 },
12394 "returns" : {
12395 "items" : {
12396 "properties" : {},
12397 "type" : "object"
12398 },
12399 "links" : [
12400 {
9fda36b0 12401 "href" : "{name}",
410dc2c9
DM
12402 "rel" : "child"
12403 }
12404 ],
12405 "type" : "array"
12406 }
12407 }
12408 },
12409 "leaf" : 0,
9fda36b0
DM
12410 "path" : "/quarantine",
12411 "text" : "quarantine"
410dc2c9
DM
12412 },
12413 {
12414 "children" : [
a55e94a6
DM
12415 {
12416 "children" : [
12417 {
12418 "info" : {
a55e94a6 12419 "GET" : {
9fda36b0 12420 "description" : "Detailed Contact Statistics.",
a55e94a6 12421 "method" : "GET",
9fda36b0 12422 "name" : "contactdetails",
a55e94a6
DM
12423 "parameters" : {
12424 "additionalProperties" : 0,
9fda36b0
DM
12425 "properties" : {
12426 "contact" : {
12427 "description" : "Contact email address.",
12428 "maxLength" : 512,
12429 "minLength" : 3,
12430 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
12431 "type" : "string"
a55e94a6 12432 },
9fda36b0
DM
12433 "day" : {
12434 "description" : "Day of month. Get statistics for a single day.",
12435 "maximum" : 31,
12436 "minimum" : 1,
a55e94a6
DM
12437 "optional" : 1,
12438 "type" : "integer",
9fda36b0 12439 "typetext" : "<integer> (1 - 31)"
a55e94a6 12440 },
9fda36b0
DM
12441 "endtime" : {
12442 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
12443 "minimum" : 1,
a55e94a6 12444 "optional" : 1,
9fda36b0
DM
12445 "type" : "integer",
12446 "typetext" : "<integer> (1 - N)"
a55e94a6 12447 },
9fda36b0
DM
12448 "filter" : {
12449 "description" : "Sender address filter.",
12450 "maxLength" : 512,
a55e94a6
DM
12451 "optional" : 1,
12452 "type" : "string",
12453 "typetext" : "<string>"
12454 },
9fda36b0
DM
12455 "month" : {
12456 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
12457 "maximum" : 12,
12458 "minimum" : 1,
a55e94a6 12459 "optional" : 1,
9fda36b0
DM
12460 "type" : "integer",
12461 "typetext" : "<integer> (1 - 12)"
a55e94a6 12462 },
9fda36b0
DM
12463 "orderby" : {
12464 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
12465 "maxLength" : 4096,
a55e94a6
DM
12466 "optional" : 1,
12467 "type" : "string",
12468 "typetext" : "<string>"
12469 },
9fda36b0
DM
12470 "starttime" : {
12471 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
12472 "minimum" : 0,
a55e94a6 12473 "optional" : 1,
9fda36b0
DM
12474 "type" : "integer",
12475 "typetext" : "<integer> (0 - N)"
a55e94a6 12476 },
9fda36b0
DM
12477 "year" : {
12478 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
12479 "maximum" : 3000,
12480 "minimum" : 1900,
12481 "optional" : 1,
12482 "type" : "integer",
12483 "typetext" : "<integer> (1900 - 3000)"
a55e94a6
DM
12484 }
12485 }
12486 },
9fda36b0
DM
12487 "permissions" : {
12488 "check" : [
12489 "admin",
12490 "qmanager",
12491 "audit"
12492 ]
12493 },
a55e94a6 12494 "returns" : {
9fda36b0
DM
12495 "items" : {
12496 "properties" : {
12497 "blocked" : {
12498 "description" : "Mail was blocked.",
12499 "type" : "boolean"
12500 },
12501 "bytes" : {
12502 "description" : "Mail traffic (Bytes).",
12503 "type" : "number"
12504 },
12505 "sender" : {
12506 "description" : "Sender email.",
12507 "type" : "string"
12508 },
12509 "spamlevel" : {
12510 "description" : "Spam score.",
12511 "type" : "number"
12512 },
12513 "time" : {
12514 "description" : "Receive time stamp",
12515 "type" : "integer"
12516 },
12517 "virusinfo" : {
12518 "description" : "Virus name.",
12519 "optional" : 1,
12520 "type" : "string"
12521 }
12522 },
12523 "type" : "object"
12524 },
12525 "type" : "array"
a55e94a6
DM
12526 }
12527 }
12528 },
12529 "leaf" : 1,
9fda36b0
DM
12530 "path" : "/statistics/contact/{contact}",
12531 "text" : "{contact}"
a55e94a6
DM
12532 }
12533 ],
12534 "info" : {
12535 "GET" : {
9fda36b0 12536 "description" : "Contact Address Statistics.",
a55e94a6 12537 "method" : "GET",
9fda36b0 12538 "name" : "contact",
a55e94a6
DM
12539 "parameters" : {
12540 "additionalProperties" : 0,
12541 "properties" : {
9fda36b0
DM
12542 "day" : {
12543 "description" : "Day of month. Get statistics for a single day.",
12544 "maximum" : 31,
12545 "minimum" : 1,
a55e94a6
DM
12546 "optional" : 1,
12547 "type" : "integer",
9fda36b0 12548 "typetext" : "<integer> (1 - 31)"
a55e94a6 12549 },
9fda36b0
DM
12550 "endtime" : {
12551 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
12552 "minimum" : 1,
410dc2c9 12553 "optional" : 1,
9fda36b0
DM
12554 "type" : "integer",
12555 "typetext" : "<integer> (1 - N)"
410dc2c9 12556 },
9fda36b0
DM
12557 "filter" : {
12558 "description" : "Contact address filter.",
12559 "maxLength" : 512,
12560 "optional" : 1,
410dc2c9
DM
12561 "type" : "string",
12562 "typetext" : "<string>"
12563 },
9fda36b0
DM
12564 "month" : {
12565 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
12566 "maximum" : 12,
12567 "minimum" : 1,
410dc2c9 12568 "optional" : 1,
9fda36b0
DM
12569 "type" : "integer",
12570 "typetext" : "<integer> (1 - 12)"
410dc2c9 12571 },
9fda36b0
DM
12572 "orderby" : {
12573 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
12574 "maxLength" : 4096,
12575 "optional" : 1,
410dc2c9
DM
12576 "type" : "string",
12577 "typetext" : "<string>"
9fda36b0
DM
12578 },
12579 "starttime" : {
12580 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
12581 "minimum" : 0,
12582 "optional" : 1,
12583 "type" : "integer",
12584 "typetext" : "<integer> (0 - N)"
12585 },
12586 "year" : {
12587 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
12588 "maximum" : 3000,
12589 "minimum" : 1900,
12590 "optional" : 1,
12591 "type" : "integer",
12592 "typetext" : "<integer> (1900 - 3000)"
410dc2c9
DM
12593 }
12594 }
12595 },
12596 "permissions" : {
9fda36b0
DM
12597 "check" : [
12598 "admin",
12599 "qmanager",
12600 "audit"
12601 ]
410dc2c9 12602 },
410dc2c9 12603 "returns" : {
9fda36b0
DM
12604 "items" : {
12605 "properties" : {
12606 "bytes" : {
12607 "description" : "Mail traffic (Bytes).",
12608 "type" : "number"
12609 },
12610 "contact" : {
12611 "description" : "Contact email.",
12612 "type" : "string"
12613 },
12614 "count" : {
12615 "description" : "Mail count.",
12616 "optional" : 1,
12617 "type" : "number"
12618 },
12619 "viruscount" : {
12620 "description" : "Number of sent virus mails.",
12621 "optional" : 1,
12622 "type" : "number"
12623 }
410dc2c9 12624 },
9fda36b0 12625 "type" : "object"
410dc2c9 12626 },
9fda36b0
DM
12627 "links" : [
12628 {
12629 "href" : "{contact}",
12630 "rel" : "child"
12631 }
12632 ],
12633 "type" : "array"
410dc2c9
DM
12634 }
12635 }
12636 },
9fda36b0
DM
12637 "leaf" : 0,
12638 "path" : "/statistics/contact",
12639 "text" : "contact"
410dc2c9
DM
12640 },
12641 {
9fda36b0
DM
12642 "children" : [
12643 {
12644 "info" : {
12645 "GET" : {
12646 "description" : "Detailed Sender Statistics.",
12647 "method" : "GET",
12648 "name" : "senderdetails",
12649 "parameters" : {
12650 "additionalProperties" : 0,
12651 "properties" : {
12652 "day" : {
12653 "description" : "Day of month. Get statistics for a single day.",
12654 "maximum" : 31,
12655 "minimum" : 1,
12656 "optional" : 1,
12657 "type" : "integer",
12658 "typetext" : "<integer> (1 - 31)"
12659 },
12660 "endtime" : {
12661 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
12662 "minimum" : 1,
12663 "optional" : 1,
12664 "type" : "integer",
12665 "typetext" : "<integer> (1 - N)"
12666 },
12667 "filter" : {
12668 "description" : "Receiver address filter.",
12669 "maxLength" : 512,
12670 "optional" : 1,
12671 "type" : "string",
12672 "typetext" : "<string>"
12673 },
12674 "month" : {
12675 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
12676 "maximum" : 12,
12677 "minimum" : 1,
12678 "optional" : 1,
12679 "type" : "integer",
12680 "typetext" : "<integer> (1 - 12)"
12681 },
12682 "orderby" : {
12683 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
12684 "maxLength" : 4096,
12685 "optional" : 1,
12686 "type" : "string",
12687 "typetext" : "<string>"
12688 },
12689 "sender" : {
12690 "description" : "Sender email address.",
12691 "maxLength" : 512,
12692 "minLength" : 3,
12693 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
12694 "type" : "string"
12695 },
12696 "starttime" : {
12697 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
12698 "minimum" : 0,
12699 "optional" : 1,
12700 "type" : "integer",
12701 "typetext" : "<integer> (0 - N)"
12702 },
12703 "year" : {
12704 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
12705 "maximum" : 3000,
12706 "minimum" : 1900,
12707 "optional" : 1,
12708 "type" : "integer",
12709 "typetext" : "<integer> (1900 - 3000)"
12710 }
12711 }
12712 },
12713 "permissions" : {
12714 "check" : [
12715 "admin",
12716 "qmanager",
12717 "audit"
12718 ]
12719 },
12720 "returns" : {
12721 "items" : {
12722 "properties" : {
12723 "blocked" : {
12724 "description" : "Mail was blocked.",
12725 "type" : "boolean"
12726 },
12727 "bytes" : {
12728 "description" : "Mail traffic (Bytes).",
12729 "type" : "number"
12730 },
12731 "receiver" : {
12732 "description" : "Receiver email.",
12733 "type" : "string"
12734 },
12735 "spamlevel" : {
12736 "description" : "Spam score.",
12737 "type" : "number"
12738 },
12739 "time" : {
12740 "description" : "Receive time stamp",
12741 "type" : "integer"
12742 },
12743 "virusinfo" : {
12744 "description" : "Virus name.",
12745 "optional" : 1,
12746 "type" : "string"
12747 }
12748 },
12749 "type" : "object"
12750 },
12751 "type" : "array"
12752 }
12753 }
12754 },
12755 "leaf" : 1,
12756 "path" : "/statistics/sender/{sender}",
12757 "text" : "{sender}"
12758 }
12759 ],
410dc2c9 12760 "info" : {
9fda36b0
DM
12761 "GET" : {
12762 "description" : "Sender Address Statistics.",
12763 "method" : "GET",
12764 "name" : "sender",
410dc2c9
DM
12765 "parameters" : {
12766 "additionalProperties" : 0,
12767 "properties" : {
9fda36b0
DM
12768 "day" : {
12769 "description" : "Day of month. Get statistics for a single day.",
12770 "maximum" : 31,
12771 "minimum" : 1,
12772 "optional" : 1,
12773 "type" : "integer",
12774 "typetext" : "<integer> (1 - 31)"
12775 },
12776 "endtime" : {
12777 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
12778 "minimum" : 1,
12779 "optional" : 1,
12780 "type" : "integer",
12781 "typetext" : "<integer> (1 - N)"
12782 },
12783 "filter" : {
12784 "description" : "Sender address filter.",
12785 "maxLength" : 512,
12786 "optional" : 1,
410dc2c9
DM
12787 "type" : "string",
12788 "typetext" : "<string>"
12789 },
9fda36b0
DM
12790 "month" : {
12791 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
12792 "maximum" : 12,
12793 "minimum" : 1,
12794 "optional" : 1,
12795 "type" : "integer",
12796 "typetext" : "<integer> (1 - 12)"
12797 },
12798 "orderby" : {
12799 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
12800 "maxLength" : 4096,
12801 "optional" : 1,
410dc2c9
DM
12802 "type" : "string",
12803 "typetext" : "<string>"
9fda36b0
DM
12804 },
12805 "starttime" : {
12806 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
12807 "minimum" : 0,
12808 "optional" : 1,
12809 "type" : "integer",
12810 "typetext" : "<integer> (0 - N)"
12811 },
12812 "year" : {
12813 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
12814 "maximum" : 3000,
12815 "minimum" : 1900,
12816 "optional" : 1,
12817 "type" : "integer",
12818 "typetext" : "<integer> (1900 - 3000)"
410dc2c9
DM
12819 }
12820 }
12821 },
a55e94a6 12822 "permissions" : {
9fda36b0
DM
12823 "check" : [
12824 "admin",
12825 "qmanager",
12826 "audit"
12827 ]
a55e94a6 12828 },
410dc2c9 12829 "returns" : {
9fda36b0
DM
12830 "items" : {
12831 "properties" : {
12832 "bytes" : {
12833 "description" : "Mail traffic (Bytes).",
12834 "type" : "number"
12835 },
12836 "count" : {
12837 "description" : "Mail count.",
12838 "optional" : 1,
12839 "type" : "number"
12840 },
12841 "sender" : {
12842 "description" : "Sender email.",
12843 "type" : "string"
12844 },
12845 "viruscount" : {
12846 "description" : "Number of sent virus mails.",
12847 "optional" : 1,
12848 "type" : "number"
12849 }
12850 },
12851 "type" : "object"
12852 },
12853 "links" : [
12854 {
12855 "href" : "{sender}",
12856 "rel" : "child"
12857 }
12858 ],
12859 "type" : "array"
410dc2c9 12860 }
9fda36b0
DM
12861 }
12862 },
12863 "leaf" : 0,
12864 "path" : "/statistics/sender",
12865 "text" : "sender"
12866 },
d7cd791b
DM
12867 {
12868 "children" : [
12869 {
12870 "info" : {
9fda36b0
DM
12871 "GET" : {
12872 "description" : "Detailed Receiver Statistics.",
12873 "method" : "GET",
12874 "name" : "receiverdetails",
d7cd791b
DM
12875 "parameters" : {
12876 "additionalProperties" : 0,
12877 "properties" : {
9fda36b0
DM
12878 "day" : {
12879 "description" : "Day of month. Get statistics for a single day.",
12880 "maximum" : 31,
12881 "minimum" : 1,
12882 "optional" : 1,
12883 "type" : "integer",
12884 "typetext" : "<integer> (1 - 31)"
12885 },
12886 "endtime" : {
12887 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
12888 "minimum" : 1,
12889 "optional" : 1,
12890 "type" : "integer",
12891 "typetext" : "<integer> (1 - N)"
12892 },
12893 "filter" : {
12894 "description" : "Sender address filter.",
d7cd791b 12895 "maxLength" : 512,
9fda36b0
DM
12896 "optional" : 1,
12897 "type" : "string",
12898 "typetext" : "<string>"
d7cd791b 12899 },
9fda36b0
DM
12900 "month" : {
12901 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
12902 "maximum" : 12,
12903 "minimum" : 1,
12904 "optional" : 1,
12905 "type" : "integer",
12906 "typetext" : "<integer> (1 - 12)"
12907 },
12908 "orderby" : {
12909 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
12910 "maxLength" : 4096,
d7cd791b
DM
12911 "optional" : 1,
12912 "type" : "string",
12913 "typetext" : "<string>"
9fda36b0
DM
12914 },
12915 "receiver" : {
12916 "description" : "Receiver email address.",
12917 "maxLength" : 512,
12918 "minLength" : 3,
12919 "pattern" : "(?:|[^\\s\\/\\@]+\\@[^\\s\\/\\@]+)",
12920 "type" : "string"
12921 },
12922 "starttime" : {
12923 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
12924 "minimum" : 0,
12925 "optional" : 1,
12926 "type" : "integer",
12927 "typetext" : "<integer> (0 - N)"
12928 },
12929 "year" : {
12930 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
12931 "maximum" : 3000,
12932 "minimum" : 1900,
12933 "optional" : 1,
12934 "type" : "integer",
12935 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
12936 }
12937 }
12938 },
12939 "permissions" : {
12940 "check" : [
12941 "admin",
12942 "qmanager",
9fda36b0 12943 "audit"
d7cd791b
DM
12944 ]
12945 },
d7cd791b 12946 "returns" : {
9fda36b0
DM
12947 "items" : {
12948 "properties" : {
12949 "blocked" : {
12950 "description" : "Mail was blocked.",
12951 "type" : "boolean"
12952 },
12953 "bytes" : {
12954 "description" : "Mail traffic (Bytes).",
12955 "type" : "number"
12956 },
12957 "sender" : {
12958 "description" : "Sender email.",
12959 "type" : "string"
12960 },
12961 "spamlevel" : {
12962 "description" : "Spam score.",
12963 "type" : "number"
12964 },
12965 "time" : {
12966 "description" : "Receive time stamp",
12967 "type" : "integer"
12968 },
12969 "virusinfo" : {
12970 "description" : "Virus name.",
12971 "optional" : 1,
12972 "type" : "string"
12973 }
12974 },
12975 "type" : "object"
12976 },
12977 "type" : "array"
d7cd791b
DM
12978 }
12979 }
12980 },
12981 "leaf" : 1,
9fda36b0
DM
12982 "path" : "/statistics/receiver/{receiver}",
12983 "text" : "{receiver}"
d7cd791b
DM
12984 }
12985 ],
12986 "info" : {
12987 "GET" : {
9fda36b0 12988 "description" : "Receiver Address Statistics.",
d7cd791b 12989 "method" : "GET",
9fda36b0 12990 "name" : "receiver",
d7cd791b
DM
12991 "parameters" : {
12992 "additionalProperties" : 0,
12993 "properties" : {
9fda36b0
DM
12994 "day" : {
12995 "description" : "Day of month. Get statistics for a single day.",
12996 "maximum" : 31,
12997 "minimum" : 1,
12998 "optional" : 1,
12999 "type" : "integer",
13000 "typetext" : "<integer> (1 - 31)"
13001 },
13002 "endtime" : {
13003 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13004 "minimum" : 1,
13005 "optional" : 1,
13006 "type" : "integer",
13007 "typetext" : "<integer> (1 - N)"
13008 },
13009 "filter" : {
13010 "description" : "Receiver address filter.",
13011 "maxLength" : 512,
13012 "optional" : 1,
13013 "type" : "string",
13014 "typetext" : "<string>"
13015 },
13016 "month" : {
13017 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
13018 "maximum" : 12,
13019 "minimum" : 1,
13020 "optional" : 1,
13021 "type" : "integer",
13022 "typetext" : "<integer> (1 - 12)"
13023 },
13024 "orderby" : {
13025 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
13026 "maxLength" : 4096,
d7cd791b
DM
13027 "optional" : 1,
13028 "type" : "string",
13029 "typetext" : "<string>"
9fda36b0
DM
13030 },
13031 "starttime" : {
13032 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13033 "minimum" : 0,
13034 "optional" : 1,
13035 "type" : "integer",
13036 "typetext" : "<integer> (0 - N)"
13037 },
13038 "year" : {
13039 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
13040 "maximum" : 3000,
13041 "minimum" : 1900,
13042 "optional" : 1,
13043 "type" : "integer",
13044 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
13045 }
13046 }
13047 },
13048 "permissions" : {
13049 "check" : [
13050 "admin",
13051 "qmanager",
9fda36b0 13052 "audit"
d7cd791b
DM
13053 ]
13054 },
13055 "returns" : {
13056 "items" : {
13057 "properties" : {
9fda36b0
DM
13058 "bytes" : {
13059 "description" : "Mail traffic (Bytes).",
13060 "type" : "number"
13061 },
13062 "count" : {
13063 "description" : "Mail count.",
13064 "optional" : 1,
13065 "type" : "number"
13066 },
13067 "receiver" : {
13068 "description" : "Sender email.",
d7cd791b 13069 "type" : "string"
9fda36b0
DM
13070 },
13071 "spamcount" : {
13072 "description" : "Number of sent spam mails.",
13073 "optional" : 1,
13074 "type" : "number"
13075 },
13076 "viruscount" : {
13077 "description" : "Number of sent virus mails.",
13078 "optional" : 1,
13079 "type" : "number"
d7cd791b
DM
13080 }
13081 },
13082 "type" : "object"
13083 },
9fda36b0
DM
13084 "links" : [
13085 {
13086 "href" : "{receiver}",
13087 "rel" : "child"
d7cd791b 13088 }
9fda36b0
DM
13089 ],
13090 "type" : "array"
d7cd791b
DM
13091 }
13092 }
13093 },
13094 "leaf" : 0,
9fda36b0
DM
13095 "path" : "/statistics/receiver",
13096 "text" : "receiver"
d7cd791b
DM
13097 },
13098 {
d7cd791b
DM
13099 "info" : {
13100 "GET" : {
9fda36b0 13101 "description" : "Mail Domains Statistics.",
d7cd791b 13102 "method" : "GET",
9fda36b0 13103 "name" : "domains",
d7cd791b
DM
13104 "parameters" : {
13105 "additionalProperties" : 0,
13106 "properties" : {
9fda36b0
DM
13107 "day" : {
13108 "description" : "Day of month. Get statistics for a single day.",
13109 "maximum" : 31,
13110 "minimum" : 1,
13111 "optional" : 1,
13112 "type" : "integer",
13113 "typetext" : "<integer> (1 - 31)"
13114 },
13115 "endtime" : {
13116 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13117 "minimum" : 1,
13118 "optional" : 1,
13119 "type" : "integer",
13120 "typetext" : "<integer> (1 - N)"
13121 },
13122 "month" : {
13123 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
13124 "maximum" : 12,
13125 "minimum" : 1,
13126 "optional" : 1,
13127 "type" : "integer",
13128 "typetext" : "<integer> (1 - 12)"
13129 },
13130 "starttime" : {
13131 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13132 "minimum" : 0,
d7cd791b 13133 "optional" : 1,
9fda36b0
DM
13134 "type" : "integer",
13135 "typetext" : "<integer> (0 - N)"
13136 },
13137 "year" : {
13138 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
13139 "maximum" : 3000,
13140 "minimum" : 1900,
13141 "optional" : 1,
13142 "type" : "integer",
13143 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
13144 }
13145 }
13146 },
13147 "permissions" : {
13148 "check" : [
13149 "admin",
13150 "qmanager",
9fda36b0 13151 "audit"
d7cd791b
DM
13152 ]
13153 },
13154 "returns" : {
13155 "items" : {
13156 "properties" : {
274b47fc
DM
13157 "bytes_in" : {
13158 "description" : "Incoming mail traffic (Bytes).",
13159 "type" : "number"
13160 },
13161 "bytes_out" : {
13162 "description" : "Outgoing mail traffic (Bytes).",
13163 "type" : "number"
13164 },
9fda36b0
DM
13165 "count_in" : {
13166 "description" : "Incoming mail count.",
13167 "type" : "number"
13168 },
13169 "count_out" : {
13170 "description" : "Outgoing mail count.",
13171 "type" : "number"
13172 },
13173 "domain" : {
13174 "description" : "Domain name.",
d7cd791b 13175 "type" : "string"
9fda36b0 13176 },
9fda36b0
DM
13177 "spamcount_in" : {
13178 "description" : "Incoming spam mails.",
13179 "type" : "number"
13180 },
13181 "spamcount_out" : {
13182 "description" : "Outgoing spam mails.",
13183 "type" : "number"
13184 },
13185 "viruscount_in" : {
13186 "description" : "Number of incoming virus mails.",
13187 "type" : "number"
13188 },
13189 "viruscount_out" : {
13190 "description" : "Number of outgoing virus mails.",
13191 "type" : "number"
d7cd791b
DM
13192 }
13193 },
13194 "type" : "object"
13195 },
13196 "type" : "array"
13197 }
9fda36b0
DM
13198 }
13199 },
13200 "leaf" : 1,
13201 "path" : "/statistics/domains",
13202 "text" : "domains"
13203 },
13204 {
13205 "info" : {
13206 "GET" : {
13207 "description" : "General Mail Statistics.",
13208 "method" : "GET",
13209 "name" : "mail",
d7cd791b
DM
13210 "parameters" : {
13211 "additionalProperties" : 0,
13212 "properties" : {
9fda36b0
DM
13213 "day" : {
13214 "description" : "Day of month. Get statistics for a single day.",
13215 "maximum" : 31,
13216 "minimum" : 1,
13217 "optional" : 1,
13218 "type" : "integer",
13219 "typetext" : "<integer> (1 - 31)"
d7cd791b 13220 },
9fda36b0
DM
13221 "endtime" : {
13222 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13223 "minimum" : 1,
d7cd791b 13224 "optional" : 1,
9fda36b0
DM
13225 "type" : "integer",
13226 "typetext" : "<integer> (1 - N)"
13227 },
13228 "month" : {
13229 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
13230 "maximum" : 12,
13231 "minimum" : 1,
13232 "optional" : 1,
13233 "type" : "integer",
13234 "typetext" : "<integer> (1 - 12)"
13235 },
13236 "starttime" : {
13237 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13238 "minimum" : 0,
13239 "optional" : 1,
13240 "type" : "integer",
13241 "typetext" : "<integer> (0 - N)"
13242 },
13243 "year" : {
13244 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
13245 "maximum" : 3000,
13246 "minimum" : 1900,
13247 "optional" : 1,
13248 "type" : "integer",
13249 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
13250 }
13251 }
13252 },
13253 "permissions" : {
13254 "check" : [
13255 "admin",
13256 "qmanager",
9fda36b0 13257 "audit"
d7cd791b
DM
13258 ]
13259 },
d7cd791b 13260 "returns" : {
9fda36b0
DM
13261 "properties" : {
13262 "avptime" : {
13263 "description" : "Average mail processing time in seconds.",
13264 "type" : "number"
13265 },
13266 "bounces_in" : {
13267 "description" : "Incoming bounce mail count (sender = <>).",
13268 "type" : "number"
13269 },
13270 "bounces_out" : {
13271 "description" : "Outgoing bounce mail count (sender = <>).",
13272 "type" : "number"
13273 },
13274 "bytes_in" : {
13275 "description" : "Incoming mail traffic (bytes).",
13276 "type" : "number"
13277 },
13278 "bytes_out" : {
13279 "description" : "Outgoing mail traffic (bytes).",
13280 "type" : "number"
13281 },
13282 "count" : {
13283 "description" : "Overall mail count (in and out).",
13284 "type" : "number"
13285 },
13286 "count_in" : {
13287 "description" : "Incoming mail count.",
13288 "type" : "number"
13289 },
13290 "count_out" : {
13291 "description" : "Outgoing mail count.",
13292 "type" : "number"
13293 },
13294 "glcount" : {
13295 "description" : "Number of greylisted mails.",
13296 "type" : "number"
13297 },
13298 "junk_in" : {
274b47fc 13299 "description" : "Incoming junk mail count (viruscount_in + spamcount_in + glcount + spfcount + rbl_rejects + pregreet_rejects).",
9fda36b0
DM
13300 "type" : "number"
13301 },
13302 "junk_out" : {
13303 "description" : "Outgoing junk mail count (viruscount_out + spamcount_out).",
13304 "type" : "number"
13305 },
274b47fc
DM
13306 "pregreet_rejects" : {
13307 "description" : "PREGREET recject count.",
13308 "type" : "integer"
13309 },
13310 "rbl_rejects" : {
13311 "description" : "Number of RBL rejects.",
13312 "type" : "integer"
13313 },
9fda36b0
DM
13314 "spamcount_in" : {
13315 "description" : "Incoming spam mails.",
13316 "type" : "number"
13317 },
13318 "spamcount_out" : {
13319 "description" : "Outgoing spam mails.",
13320 "type" : "number"
13321 },
13322 "spfcount" : {
13323 "description" : "Mails rejected by SPF.",
13324 "type" : "number"
13325 },
13326 "viruscount_in" : {
13327 "description" : "Number of incoming virus mails.",
13328 "type" : "number"
13329 },
13330 "viruscount_out" : {
13331 "description" : "Number of outgoing virus mails.",
13332 "type" : "number"
13333 }
13334 },
13335 "type" : "object"
d7cd791b
DM
13336 }
13337 }
13338 },
9fda36b0
DM
13339 "leaf" : 1,
13340 "path" : "/statistics/mail",
13341 "text" : "mail"
d7cd791b 13342 },
732d76e1
DM
13343 {
13344 "info" : {
13345 "GET" : {
13346 "description" : "Mail Count Statistics.",
13347 "method" : "GET",
13348 "name" : "recent",
13349 "parameters" : {
13350 "additionalProperties" : 0,
13351 "properties" : {
13352 "hours" : {
13353 "default" : 12,
13354 "description" : "How many hours you want to get",
13355 "maximum" : 24,
13356 "minimum" : 1,
13357 "optional" : 1,
13358 "type" : "integer",
13359 "typetext" : "<integer> (1 - 24)"
13360 },
13361 "timespan" : {
13362 "default" : 1800,
13363 "description" : "The Timespan for one datapoint (in seconds)",
13364 "maximum" : 1800,
13365 "minimum" : 1,
13366 "optional" : 1,
13367 "type" : "integer",
13368 "typetext" : "<integer> (1 - 1800)"
13369 }
13370 }
13371 },
13372 "permissions" : {
13373 "check" : [
13374 "admin",
13375 "qmanager",
13376 "audit"
13377 ]
13378 },
13379 "returns" : {
13380 "items" : {
13381 "properties" : {
13382 "bytes_in" : {
13383 "description" : "Number of incoming bytes mails.",
13384 "type" : "number"
13385 },
13386 "bytes_out" : {
13387 "description" : "Number of outgoing bytes mails.",
13388 "type" : "number"
13389 },
13390 "count" : {
13391 "description" : "Overall mail count (in and out).",
13392 "type" : "number"
13393 },
13394 "count_in" : {
13395 "description" : "Incoming mail count.",
13396 "type" : "number"
13397 },
13398 "count_out" : {
13399 "description" : "Outgoing mail count.",
13400 "type" : "number"
13401 },
13402 "index" : {
13403 "description" : "Time index.",
13404 "type" : "integer"
13405 },
13406 "spam" : {
13407 "description" : "Overall spam mail count (in and out).",
13408 "type" : "number"
13409 },
13410 "spam_in" : {
13411 "description" : "Incoming spam mails (spamcount_in + glcount + spfcount).",
13412 "type" : "number"
13413 },
13414 "spam_out" : {
13415 "description" : "Outgoing spam mails.",
13416 "type" : "number"
13417 },
13418 "time" : {
13419 "description" : "Time (Unix epoch).",
13420 "type" : "integer"
13421 },
13422 "timespan" : {
13423 "description" : "Timespan in seconds for one data point",
13424 "type" : "number"
13425 },
13426 "virus_in" : {
13427 "description" : "Number of incoming virus mails.",
13428 "type" : "number"
13429 },
13430 "virus_out" : {
13431 "description" : "Number of outgoing virus mails.",
13432 "type" : "number"
13433 }
13434 },
13435 "type" : "object"
13436 },
13437 "type" : "array"
13438 }
13439 }
13440 },
13441 "leaf" : 1,
13442 "path" : "/statistics/recent",
13443 "text" : "recent"
13444 },
13445 {
13446 "info" : {
13447 "GET" : {
13448 "description" : "Top recent Mail Receivers (including spam)",
13449 "method" : "GET",
13450 "name" : "recentreceivers",
13451 "parameters" : {
13452 "additionalProperties" : 0,
13453 "properties" : {
13454 "hours" : {
13455 "default" : 12,
13456 "description" : "How many hours you want to get",
13457 "maximum" : 24,
13458 "minimum" : 1,
13459 "optional" : 1,
13460 "type" : "integer",
13461 "typetext" : "<integer> (1 - 24)"
13462 },
13463 "limit" : {
13464 "default" : 5,
13465 "description" : "The maximum number of receivers to return.",
13466 "maximum" : 50,
13467 "minimum" : 1,
13468 "optional" : 1,
13469 "type" : "integer",
13470 "typetext" : "<integer> (1 - 50)"
13471 }
13472 }
13473 },
13474 "permissions" : {
13475 "check" : [
13476 "admin",
13477 "qmanager",
13478 "audit"
13479 ]
13480 },
13481 "returns" : {
13482 "items" : {
13483 "properties" : {
13484 "count" : {
13485 "description" : "The count of incoming not blocked E-Mails",
13486 "type" : "integer"
13487 },
13488 "receiver" : {
13489 "description" : "The receiver",
13490 "type" : "string"
13491 }
13492 },
13493 "type" : "object"
13494 },
13495 "type" : "array"
13496 }
13497 }
13498 },
13499 "leaf" : 1,
13500 "path" : "/statistics/recentreceivers",
13501 "text" : "recentreceivers"
13502 },
d7cd791b 13503 {
9fda36b0
DM
13504 "info" : {
13505 "GET" : {
13506 "description" : "Mail Count Statistics.",
13507 "method" : "GET",
13508 "name" : "mailcount",
13509 "parameters" : {
13510 "additionalProperties" : 0,
13511 "properties" : {
13512 "day" : {
13513 "description" : "Day of month. Get statistics for a single day.",
13514 "maximum" : 31,
13515 "minimum" : 1,
13516 "optional" : 1,
13517 "type" : "integer",
13518 "typetext" : "<integer> (1 - 31)"
d7cd791b 13519 },
9fda36b0
DM
13520 "endtime" : {
13521 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13522 "minimum" : 1,
13523 "optional" : 1,
13524 "type" : "integer",
13525 "typetext" : "<integer> (1 - N)"
d7cd791b 13526 },
9fda36b0
DM
13527 "month" : {
13528 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
13529 "maximum" : 12,
13530 "minimum" : 1,
13531 "optional" : 1,
13532 "type" : "integer",
13533 "typetext" : "<integer> (1 - 12)"
13534 },
13535 "starttime" : {
13536 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13537 "minimum" : 0,
13538 "optional" : 1,
13539 "type" : "integer",
13540 "typetext" : "<integer> (0 - N)"
13541 },
13542 "timespan" : {
13543 "default" : 3600,
13544 "description" : "Return Mails/<timespan>, where <timespan> is specified in seconds.",
13545 "maximum" : 31622400,
13546 "minimum" : 3600,
13547 "optional" : 1,
13548 "type" : "integer",
13549 "typetext" : "<integer> (3600 - 31622400)"
13550 },
13551 "year" : {
13552 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
13553 "maximum" : 3000,
13554 "minimum" : 1900,
13555 "optional" : 1,
13556 "type" : "integer",
13557 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
13558 }
13559 }
13560 },
9fda36b0
DM
13561 "permissions" : {
13562 "check" : [
13563 "admin",
13564 "qmanager",
13565 "audit"
13566 ]
13567 },
13568 "returns" : {
13569 "items" : {
13570 "properties" : {
13571 "bounces_in" : {
13572 "description" : "Incoming bounce mail count (sender = <>).",
13573 "type" : "number"
13574 },
13575 "bounces_out" : {
13576 "description" : "Outgoing bounce mail count (sender = <>).",
13577 "type" : "number"
13578 },
13579 "count" : {
13580 "description" : "Overall mail count (in and out).",
13581 "type" : "number"
13582 },
13583 "count_in" : {
13584 "description" : "Incoming mail count.",
13585 "type" : "number"
13586 },
13587 "count_out" : {
13588 "description" : "Outgoing mail count.",
13589 "type" : "number"
13590 },
13591 "index" : {
13592 "description" : "Time index.",
13593 "type" : "integer"
13594 },
274b47fc
DM
13595 "pregreet_rejects" : {
13596 "description" : "PREGREET recject count.",
13597 "type" : "integer"
13598 },
13599 "rbl_rejects" : {
13600 "description" : "Number of RBL rejects.",
13601 "type" : "integer"
13602 },
9fda36b0 13603 "spamcount_in" : {
274b47fc 13604 "description" : "Incoming spam mails (spamcount_in + glcount + spfcount + rbl_rejects + pregreet_rejects).",
9fda36b0
DM
13605 "type" : "number"
13606 },
13607 "spamcount_out" : {
13608 "description" : "Outgoing spam mails.",
13609 "type" : "number"
13610 },
13611 "time" : {
13612 "description" : "Time (Unix epoch).",
13613 "type" : "integer"
13614 },
13615 "viruscount_in" : {
13616 "description" : "Number of incoming virus mails.",
13617 "type" : "number"
13618 },
13619 "viruscount_out" : {
13620 "description" : "Number of outgoing virus mails.",
13621 "type" : "number"
13622 }
13623 },
13624 "type" : "object"
13625 },
13626 "type" : "array"
13627 }
d7cd791b 13628 }
9fda36b0
DM
13629 },
13630 "leaf" : 1,
13631 "path" : "/statistics/mailcount",
13632 "text" : "mailcount"
13633 },
13634 {
d7cd791b
DM
13635 "info" : {
13636 "GET" : {
9fda36b0 13637 "description" : "Get Statistics about detected Viruses.",
d7cd791b 13638 "method" : "GET",
9fda36b0 13639 "name" : "virus",
d7cd791b
DM
13640 "parameters" : {
13641 "additionalProperties" : 0,
13642 "properties" : {
9fda36b0
DM
13643 "day" : {
13644 "description" : "Day of month. Get statistics for a single day.",
13645 "maximum" : 31,
13646 "minimum" : 1,
13647 "optional" : 1,
13648 "type" : "integer",
13649 "typetext" : "<integer> (1 - 31)"
13650 },
d7cd791b 13651 "endtime" : {
9fda36b0 13652 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
d7cd791b
DM
13653 "minimum" : 1,
13654 "optional" : 1,
13655 "type" : "integer",
13656 "typetext" : "<integer> (1 - N)"
13657 },
9fda36b0
DM
13658 "month" : {
13659 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
13660 "maximum" : 12,
13661 "minimum" : 1,
d7cd791b 13662 "optional" : 1,
9fda36b0
DM
13663 "type" : "integer",
13664 "typetext" : "<integer> (1 - 12)"
d7cd791b
DM
13665 },
13666 "starttime" : {
9fda36b0 13667 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
d7cd791b
DM
13668 "minimum" : 0,
13669 "optional" : 1,
13670 "type" : "integer",
13671 "typetext" : "<integer> (0 - N)"
9fda36b0
DM
13672 },
13673 "year" : {
13674 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
13675 "maximum" : 3000,
13676 "minimum" : 1900,
13677 "optional" : 1,
13678 "type" : "integer",
13679 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
13680 }
13681 }
13682 },
13683 "permissions" : {
13684 "check" : [
13685 "admin",
13686 "qmanager",
9fda36b0 13687 "audit"
d7cd791b
DM
13688 ]
13689 },
13690 "returns" : {
13691 "items" : {
13692 "properties" : {
13693 "count" : {
9fda36b0 13694 "description" : "Detection count.",
d7cd791b
DM
13695 "type" : "integer"
13696 },
9fda36b0
DM
13697 "name" : {
13698 "description" : "Virus name.",
13699 "type" : "string"
d7cd791b
DM
13700 }
13701 },
13702 "type" : "object"
13703 },
d7cd791b
DM
13704 "type" : "array"
13705 }
13706 }
13707 },
9fda36b0
DM
13708 "leaf" : 1,
13709 "path" : "/statistics/virus",
13710 "text" : "virus"
d7cd791b
DM
13711 },
13712 {
13713 "info" : {
13714 "GET" : {
9fda36b0 13715 "description" : "Get the count of spam mails grouped by spam score. Count for score 10 includes mails with spam score > 10.",
d7cd791b 13716 "method" : "GET",
9fda36b0 13717 "name" : "spamscores",
d7cd791b
DM
13718 "parameters" : {
13719 "additionalProperties" : 0,
13720 "properties" : {
9fda36b0
DM
13721 "day" : {
13722 "description" : "Day of month. Get statistics for a single day.",
13723 "maximum" : 31,
13724 "minimum" : 1,
13725 "optional" : 1,
13726 "type" : "integer",
13727 "typetext" : "<integer> (1 - 31)"
d7cd791b 13728 },
9fda36b0
DM
13729 "endtime" : {
13730 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13731 "minimum" : 1,
d7cd791b 13732 "optional" : 1,
9fda36b0
DM
13733 "type" : "integer",
13734 "typetext" : "<integer> (1 - N)"
13735 },
13736 "month" : {
13737 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
13738 "maximum" : 12,
13739 "minimum" : 1,
13740 "optional" : 1,
13741 "type" : "integer",
13742 "typetext" : "<integer> (1 - 12)"
13743 },
13744 "starttime" : {
13745 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13746 "minimum" : 0,
13747 "optional" : 1,
13748 "type" : "integer",
13749 "typetext" : "<integer> (0 - N)"
13750 },
13751 "year" : {
13752 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
13753 "maximum" : 3000,
13754 "minimum" : 1900,
13755 "optional" : 1,
13756 "type" : "integer",
13757 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
13758 }
13759 }
13760 },
13761 "permissions" : {
13762 "check" : [
13763 "admin",
13764 "qmanager",
9fda36b0 13765 "audit"
d7cd791b
DM
13766 ]
13767 },
13768 "returns" : {
9fda36b0
DM
13769 "items" : {
13770 "properties" : {
13771 "count" : {
13772 "description" : "Detection count.",
13773 "type" : "integer"
13774 },
13775 "level" : {
13776 "description" : "Spam level.",
13777 "type" : "string"
13778 },
13779 "ratio" : {
13780 "description" : "Portion of overall mail count.",
13781 "type" : "number"
13782 }
d7cd791b 13783 },
9fda36b0
DM
13784 "type" : "object"
13785 },
13786 "type" : "array"
13787 }
13788 }
13789 },
13790 "leaf" : 1,
13791 "path" : "/statistics/spamscores",
13792 "text" : "spamscores"
13793 },
13794 {
13795 "info" : {
13796 "GET" : {
13797 "description" : "Get the count of spam mails grouped by spam score. Count for score 10 includes mails with spam score > 10.",
13798 "method" : "GET",
13799 "name" : "maildistribution",
13800 "parameters" : {
13801 "additionalProperties" : 0,
13802 "properties" : {
13803 "day" : {
13804 "description" : "Day of month. Get statistics for a single day.",
13805 "maximum" : 31,
13806 "minimum" : 1,
d7cd791b 13807 "optional" : 1,
9fda36b0
DM
13808 "type" : "integer",
13809 "typetext" : "<integer> (1 - 31)"
d7cd791b 13810 },
9fda36b0
DM
13811 "endtime" : {
13812 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13813 "minimum" : 1,
13814 "optional" : 1,
13815 "type" : "integer",
13816 "typetext" : "<integer> (1 - N)"
d7cd791b 13817 },
9fda36b0
DM
13818 "month" : {
13819 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
13820 "maximum" : 12,
13821 "minimum" : 1,
13822 "optional" : 1,
13823 "type" : "integer",
13824 "typetext" : "<integer> (1 - 12)"
d7cd791b 13825 },
9fda36b0
DM
13826 "starttime" : {
13827 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13828 "minimum" : 0,
13829 "optional" : 1,
13830 "type" : "integer",
13831 "typetext" : "<integer> (0 - N)"
d7cd791b 13832 },
9fda36b0
DM
13833 "year" : {
13834 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
13835 "maximum" : 3000,
13836 "minimum" : 1900,
13837 "optional" : 1,
13838 "type" : "integer",
13839 "typetext" : "<integer> (1900 - 3000)"
d7cd791b 13840 }
9fda36b0
DM
13841 }
13842 },
13843 "permissions" : {
13844 "check" : [
13845 "admin",
13846 "qmanager",
13847 "audit"
13848 ]
13849 },
13850 "returns" : {
13851 "items" : {
13852 "properties" : {
13853 "bounces_in" : {
13854 "description" : "Incoming bounce mail count (sender = <>).",
13855 "type" : "number"
13856 },
13857 "bounces_out" : {
13858 "description" : "Outgoing bounce mail count (sender = <>).",
13859 "type" : "number"
13860 },
13861 "count" : {
13862 "description" : "Overall mail count (in and out).",
13863 "type" : "number"
13864 },
13865 "count_in" : {
13866 "description" : "Incoming mail count.",
13867 "type" : "number"
13868 },
13869 "count_out" : {
13870 "description" : "Outgoing mail count.",
13871 "type" : "number"
13872 },
13873 "index" : {
13874 "description" : "Hour (0-23).",
13875 "type" : "integer"
13876 },
13877 "spamcount_in" : {
13878 "description" : "Incoming spam mails (spamcount_in + glcount + spfcount).",
13879 "type" : "number"
13880 },
13881 "spamcount_out" : {
13882 "description" : "Outgoing spam mails.",
13883 "type" : "number"
13884 },
13885 "viruscount_in" : {
13886 "description" : "Number of incoming virus mails.",
13887 "type" : "number"
13888 },
13889 "viruscount_out" : {
13890 "description" : "Number of outgoing virus mails.",
13891 "type" : "number"
13892 }
13893 },
13894 "type" : "object"
d7cd791b 13895 },
9fda36b0 13896 "type" : "array"
d7cd791b 13897 }
9fda36b0
DM
13898 }
13899 },
13900 "leaf" : 1,
13901 "path" : "/statistics/maildistribution",
13902 "text" : "maildistribution"
13903 },
13904 {
13905 "info" : {
13906 "GET" : {
274b47fc 13907 "description" : "Early SMTP reject count statistic (RBL, PREGREET rejects with postscreen)",
9fda36b0 13908 "method" : "GET",
274b47fc 13909 "name" : "rejectcount",
d7cd791b
DM
13910 "parameters" : {
13911 "additionalProperties" : 0,
13912 "properties" : {
9fda36b0
DM
13913 "day" : {
13914 "description" : "Day of month. Get statistics for a single day.",
13915 "maximum" : 31,
13916 "minimum" : 1,
13917 "optional" : 1,
13918 "type" : "integer",
13919 "typetext" : "<integer> (1 - 31)"
d7cd791b 13920 },
9fda36b0
DM
13921 "endtime" : {
13922 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13923 "minimum" : 1,
13924 "optional" : 1,
13925 "type" : "integer",
13926 "typetext" : "<integer> (1 - N)"
13927 },
13928 "month" : {
13929 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
13930 "maximum" : 12,
13931 "minimum" : 1,
13932 "optional" : 1,
13933 "type" : "integer",
13934 "typetext" : "<integer> (1 - 12)"
13935 },
13936 "starttime" : {
13937 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13938 "minimum" : 0,
13939 "optional" : 1,
13940 "type" : "integer",
13941 "typetext" : "<integer> (0 - N)"
13942 },
13943 "timespan" : {
13944 "default" : 3600,
274b47fc 13945 "description" : "Return RBL/PREGREET rejects/<timespan>, where <timespan> is specified in seconds.",
9fda36b0
DM
13946 "maximum" : 31622400,
13947 "minimum" : 3600,
13948 "optional" : 1,
13949 "type" : "integer",
13950 "typetext" : "<integer> (3600 - 31622400)"
13951 },
13952 "year" : {
13953 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
13954 "maximum" : 3000,
13955 "minimum" : 1900,
13956 "optional" : 1,
13957 "type" : "integer",
13958 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
13959 }
13960 }
13961 },
13962 "permissions" : {
13963 "check" : [
13964 "admin",
13965 "qmanager",
9fda36b0 13966 "audit"
d7cd791b
DM
13967 ]
13968 },
d7cd791b 13969 "returns" : {
9fda36b0
DM
13970 "items" : {
13971 "properties" : {
9fda36b0
DM
13972 "index" : {
13973 "description" : "Time index.",
13974 "type" : "integer"
13975 },
274b47fc
DM
13976 "pregreet_rejects" : {
13977 "description" : "PREGREET recject count.",
13978 "type" : "integer"
13979 },
13980 "rbl_rejects" : {
13981 "description" : "RBL recject count.",
13982 "type" : "integer"
13983 },
9fda36b0
DM
13984 "time" : {
13985 "description" : "Time (Unix epoch).",
13986 "type" : "integer"
13987 }
13988 },
13989 "type" : "object"
13990 },
13991 "type" : "array"
d7cd791b
DM
13992 }
13993 }
13994 },
13995 "leaf" : 1,
274b47fc
DM
13996 "path" : "/statistics/rejectcount",
13997 "text" : "rejectcount"
d7cd791b
DM
13998 }
13999 ],
14000 "info" : {
14001 "GET" : {
14002 "description" : "Directory index.",
14003 "method" : "GET",
14004 "name" : "index",
14005 "parameters" : {
14006 "additionalProperties" : 0
14007 },
14008 "permissions" : {
9fda36b0
DM
14009 "check" : [
14010 "admin",
14011 "qmanager",
14012 "audit"
14013 ]
d7cd791b
DM
14014 },
14015 "returns" : {
14016 "items" : {
14017 "properties" : {},
14018 "type" : "object"
14019 },
14020 "links" : [
14021 {
14022 "href" : "{name}",
14023 "rel" : "child"
14024 }
14025 ],
14026 "type" : "array"
14027 }
14028 }
14029 },
14030 "leaf" : 0,
9fda36b0
DM
14031 "path" : "/statistics",
14032 "text" : "statistics"
d7cd791b 14033 },
410dc2c9
DM
14034 {
14035 "info" : {
14036 "GET" : {
14037 "description" : "API version details.",
14038 "method" : "GET",
14039 "name" : "version",
14040 "parameters" : {
14041 "additionalProperties" : 0
14042 },
14043 "permissions" : {
14044 "user" : "all"
14045 },
14046 "returns" : {
14047 "properties" : {
14048 "release" : {
14049 "type" : "string"
14050 },
14051 "repoid" : {
14052 "type" : "string"
14053 },
14054 "version" : {
14055 "type" : "string"
14056 }
14057 },
14058 "type" : "object"
14059 }
14060 }
14061 },
14062 "leaf" : 1,
14063 "path" : "/version",
14064 "text" : "version"
14065 }
14066]
14067;
14068