]> git.proxmox.com Git - pmg-docs.git/blame - api-viewer/apidata.js
update static
[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" : {
6bd70b95 9 "allowtoken" : 1,
d7cd791b
DM
10 "description" : "Returns the rule database digest. This is used internally for cluster synchronization.",
11 "method" : "GET",
12 "name" : "ruledb_digest",
13 "parameters" : {
14 "additionalProperties" : 0
15 },
732d76e1
DM
16 "permissions" : {
17 "check" : [
18 "admin",
19 "audit"
20 ]
21 },
d7cd791b
DM
22 "returns" : {
23 "type" : "string"
24 }
25 }
26 },
27 "leaf" : 1,
28 "path" : "/config/ruledb/digest",
29 "text" : "digest"
30 },
410dc2c9 31 {
f245a28c
DM
32 "children" : [
33 {
34 "children" : [
35 {
36 "info" : {
37 "GET" : {
6bd70b95 38 "allowtoken" : 1,
f245a28c
DM
39 "description" : "Get common rule properties.",
40 "method" : "GET",
41 "name" : "config",
42 "parameters" : {
43 "additionalProperties" : 0,
44 "properties" : {
45 "id" : {
46 "description" : "Rule ID.",
47 "type" : "integer",
48 "typetext" : "<integer>"
49 }
50 }
51 },
732d76e1
DM
52 "permissions" : {
53 "check" : [
54 "admin",
55 "audit"
56 ]
57 },
f245a28c
DM
58 "proxyto" : "master",
59 "returns" : {
60 "properties" : {
61 "active" : {
62 "type" : "boolean"
63 },
64 "direction" : {
65 "type" : "integer"
66 },
67 "id" : {
68 "type" : "integer"
69 },
70 "name" : {
71 "type" : "string"
72 },
73 "priority" : {
74 "type" : "integer"
75 }
76 },
77 "type" : "object"
78 }
79 },
80 "PUT" : {
6bd70b95 81 "allowtoken" : 1,
f245a28c
DM
82 "description" : "Set rule properties.",
83 "method" : "PUT",
84 "name" : "update_config",
85 "parameters" : {
86 "additionalProperties" : 0,
87 "properties" : {
88 "active" : {
89 "description" : "Flag to activate rule.",
90 "optional" : 1,
91 "type" : "boolean",
92 "typetext" : "<boolean>"
93 },
94 "direction" : {
95 "description" : "Rule direction. Value `0` matches incomming mails, value `1` matches outgoing mails, and value `2` matches both directions.",
96 "maximum" : 2,
97 "minimum" : 0,
98 "optional" : 1,
99 "type" : "integer",
100 "typetext" : "<integer> (0 - 2)"
101 },
102 "id" : {
103 "description" : "Rule ID.",
104 "type" : "integer",
105 "typetext" : "<integer>"
106 },
107 "name" : {
108 "description" : "Rule name",
109 "optional" : 1,
110 "type" : "string",
111 "typetext" : "<string>"
112 },
113 "priority" : {
114 "description" : "Rule priotity.",
115 "maximum" : 100,
116 "minimum" : 0,
117 "optional" : 1,
118 "type" : "integer",
119 "typetext" : "<integer> (0 - 100)"
120 }
121 }
122 },
732d76e1
DM
123 "permissions" : {
124 "check" : [
125 "admin"
126 ]
127 },
f245a28c
DM
128 "protected" : 1,
129 "proxyto" : "master",
130 "returns" : {
131 "type" : "null"
132 }
133 }
134 },
135 "leaf" : 1,
136 "path" : "/config/ruledb/rules/{id}/config",
137 "text" : "config"
138 },
139 {
140 "children" : [
141 {
142 "info" : {
143 "DELETE" : {
6bd70b95 144 "allowtoken" : 1,
f245a28c
DM
145 "description" : "Delete group from 'from' list.",
146 "method" : "DELETE",
147 "name" : "delete_from_group",
148 "parameters" : {
149 "additionalProperties" : 0,
150 "properties" : {
151 "id" : {
152 "description" : "Rule ID.",
153 "type" : "integer",
154 "typetext" : "<integer>"
155 },
156 "ogroup" : {
157 "description" : "Groups ID.",
158 "type" : "integer",
159 "typetext" : "<integer>"
160 }
161 }
162 },
732d76e1
DM
163 "permissions" : {
164 "check" : [
165 "admin"
166 ]
167 },
f245a28c
DM
168 "protected" : 1,
169 "proxyto" : "master",
170 "returns" : {
171 "type" : "null"
172 }
173 }
174 },
175 "leaf" : 1,
176 "path" : "/config/ruledb/rules/{id}/from/{ogroup}",
177 "text" : "{ogroup}"
178 }
179 ],
180 "info" : {
181 "GET" : {
6bd70b95 182 "allowtoken" : 1,
f245a28c
DM
183 "description" : "Get 'from' group list.",
184 "method" : "GET",
185 "name" : "from",
186 "parameters" : {
187 "additionalProperties" : 0,
188 "properties" : {
189 "id" : {
190 "description" : "Rule ID.",
191 "type" : "integer",
192 "typetext" : "<integer>"
193 }
194 }
195 },
732d76e1
DM
196 "permissions" : {
197 "check" : [
198 "admin",
199 "audit"
200 ]
201 },
f245a28c
DM
202 "proxyto" : "master",
203 "returns" : {
204 "items" : {
205 "properties" : {
206 "id" : {
207 "type" : "integer"
208 }
209 },
210 "type" : "object"
211 },
212 "type" : "array"
213 }
214 },
215 "POST" : {
6bd70b95 216 "allowtoken" : 1,
f245a28c
DM
217 "description" : "Add group to 'from' list.",
218 "method" : "POST",
219 "name" : "add_from_group",
220 "parameters" : {
221 "additionalProperties" : 0,
222 "properties" : {
223 "id" : {
224 "description" : "Rule ID.",
225 "type" : "integer",
226 "typetext" : "<integer>"
227 },
228 "ogroup" : {
229 "description" : "Groups ID.",
230 "type" : "integer",
231 "typetext" : "<integer>"
232 }
233 }
234 },
732d76e1
DM
235 "permissions" : {
236 "check" : [
237 "admin"
238 ]
239 },
f245a28c
DM
240 "protected" : 1,
241 "proxyto" : "master",
242 "returns" : {
243 "type" : "null"
244 }
245 }
246 },
247 "leaf" : 0,
248 "path" : "/config/ruledb/rules/{id}/from",
249 "text" : "from"
250 },
251 {
252 "children" : [
253 {
254 "info" : {
255 "DELETE" : {
6bd70b95 256 "allowtoken" : 1,
f245a28c
DM
257 "description" : "Delete group from 'to' list.",
258 "method" : "DELETE",
259 "name" : "delete_to_group",
260 "parameters" : {
261 "additionalProperties" : 0,
262 "properties" : {
263 "id" : {
264 "description" : "Rule ID.",
265 "type" : "integer",
266 "typetext" : "<integer>"
267 },
268 "ogroup" : {
269 "description" : "Groups ID.",
270 "type" : "integer",
271 "typetext" : "<integer>"
272 }
273 }
274 },
732d76e1
DM
275 "permissions" : {
276 "check" : [
277 "admin"
278 ]
279 },
f245a28c
DM
280 "protected" : 1,
281 "proxyto" : "master",
282 "returns" : {
283 "type" : "null"
284 }
285 }
286 },
287 "leaf" : 1,
288 "path" : "/config/ruledb/rules/{id}/to/{ogroup}",
289 "text" : "{ogroup}"
290 }
291 ],
292 "info" : {
293 "GET" : {
6bd70b95 294 "allowtoken" : 1,
f245a28c
DM
295 "description" : "Get 'to' group list.",
296 "method" : "GET",
297 "name" : "to",
298 "parameters" : {
299 "additionalProperties" : 0,
300 "properties" : {
301 "id" : {
302 "description" : "Rule ID.",
303 "type" : "integer",
304 "typetext" : "<integer>"
305 }
306 }
307 },
732d76e1
DM
308 "permissions" : {
309 "check" : [
310 "admin",
311 "audit"
312 ]
313 },
f245a28c
DM
314 "proxyto" : "master",
315 "returns" : {
316 "items" : {
317 "properties" : {
318 "id" : {
319 "type" : "integer"
320 }
321 },
322 "type" : "object"
323 },
324 "type" : "array"
325 }
326 },
327 "POST" : {
6bd70b95 328 "allowtoken" : 1,
f245a28c
DM
329 "description" : "Add group to 'to' list.",
330 "method" : "POST",
331 "name" : "add_to_group",
332 "parameters" : {
333 "additionalProperties" : 0,
334 "properties" : {
335 "id" : {
336 "description" : "Rule ID.",
337 "type" : "integer",
338 "typetext" : "<integer>"
339 },
340 "ogroup" : {
341 "description" : "Groups ID.",
342 "type" : "integer",
343 "typetext" : "<integer>"
344 }
345 }
346 },
732d76e1
DM
347 "permissions" : {
348 "check" : [
349 "admin"
350 ]
351 },
f245a28c
DM
352 "protected" : 1,
353 "proxyto" : "master",
354 "returns" : {
355 "type" : "null"
356 }
357 }
358 },
359 "leaf" : 0,
360 "path" : "/config/ruledb/rules/{id}/to",
361 "text" : "to"
362 },
363 {
364 "children" : [
365 {
366 "info" : {
367 "DELETE" : {
6bd70b95 368 "allowtoken" : 1,
f245a28c
DM
369 "description" : "Delete group from 'when' list.",
370 "method" : "DELETE",
371 "name" : "delete_when_group",
372 "parameters" : {
373 "additionalProperties" : 0,
374 "properties" : {
375 "id" : {
376 "description" : "Rule ID.",
377 "type" : "integer",
378 "typetext" : "<integer>"
379 },
380 "ogroup" : {
381 "description" : "Groups ID.",
382 "type" : "integer",
383 "typetext" : "<integer>"
384 }
385 }
386 },
732d76e1
DM
387 "permissions" : {
388 "check" : [
389 "admin"
390 ]
391 },
f245a28c
DM
392 "protected" : 1,
393 "proxyto" : "master",
394 "returns" : {
395 "type" : "null"
396 }
397 }
398 },
399 "leaf" : 1,
400 "path" : "/config/ruledb/rules/{id}/when/{ogroup}",
401 "text" : "{ogroup}"
402 }
403 ],
404 "info" : {
405 "GET" : {
6bd70b95 406 "allowtoken" : 1,
f245a28c
DM
407 "description" : "Get 'when' group list.",
408 "method" : "GET",
409 "name" : "when",
410 "parameters" : {
411 "additionalProperties" : 0,
412 "properties" : {
413 "id" : {
414 "description" : "Rule ID.",
415 "type" : "integer",
416 "typetext" : "<integer>"
417 }
418 }
419 },
732d76e1
DM
420 "permissions" : {
421 "check" : [
422 "admin",
423 "audit"
424 ]
425 },
f245a28c
DM
426 "proxyto" : "master",
427 "returns" : {
428 "items" : {
429 "properties" : {
430 "id" : {
431 "type" : "integer"
432 }
433 },
434 "type" : "object"
435 },
436 "type" : "array"
437 }
438 },
439 "POST" : {
6bd70b95 440 "allowtoken" : 1,
f245a28c
DM
441 "description" : "Add group to 'when' list.",
442 "method" : "POST",
443 "name" : "add_when_group",
444 "parameters" : {
445 "additionalProperties" : 0,
446 "properties" : {
447 "id" : {
448 "description" : "Rule ID.",
449 "type" : "integer",
450 "typetext" : "<integer>"
451 },
452 "ogroup" : {
453 "description" : "Groups ID.",
454 "type" : "integer",
455 "typetext" : "<integer>"
456 }
457 }
458 },
732d76e1
DM
459 "permissions" : {
460 "check" : [
461 "admin"
462 ]
463 },
f245a28c
DM
464 "protected" : 1,
465 "proxyto" : "master",
466 "returns" : {
467 "type" : "null"
468 }
469 }
470 },
471 "leaf" : 0,
472 "path" : "/config/ruledb/rules/{id}/when",
473 "text" : "when"
474 },
475 {
476 "children" : [
477 {
478 "info" : {
479 "DELETE" : {
6bd70b95 480 "allowtoken" : 1,
f245a28c
DM
481 "description" : "Delete group from 'what' list.",
482 "method" : "DELETE",
483 "name" : "delete_what_group",
484 "parameters" : {
485 "additionalProperties" : 0,
486 "properties" : {
487 "id" : {
488 "description" : "Rule ID.",
489 "type" : "integer",
490 "typetext" : "<integer>"
491 },
492 "ogroup" : {
493 "description" : "Groups ID.",
494 "type" : "integer",
495 "typetext" : "<integer>"
496 }
497 }
498 },
732d76e1
DM
499 "permissions" : {
500 "check" : [
501 "admin"
502 ]
503 },
f245a28c
DM
504 "protected" : 1,
505 "proxyto" : "master",
506 "returns" : {
507 "type" : "null"
508 }
509 }
510 },
511 "leaf" : 1,
512 "path" : "/config/ruledb/rules/{id}/what/{ogroup}",
513 "text" : "{ogroup}"
514 }
515 ],
516 "info" : {
517 "GET" : {
6bd70b95 518 "allowtoken" : 1,
f245a28c
DM
519 "description" : "Get 'what' group list.",
520 "method" : "GET",
521 "name" : "what",
522 "parameters" : {
523 "additionalProperties" : 0,
524 "properties" : {
525 "id" : {
526 "description" : "Rule ID.",
527 "type" : "integer",
528 "typetext" : "<integer>"
529 }
530 }
531 },
732d76e1
DM
532 "permissions" : {
533 "check" : [
534 "admin",
535 "audit"
536 ]
537 },
f245a28c
DM
538 "proxyto" : "master",
539 "returns" : {
540 "items" : {
541 "properties" : {
542 "id" : {
543 "type" : "integer"
544 }
545 },
546 "type" : "object"
547 },
548 "type" : "array"
549 }
550 },
551 "POST" : {
6bd70b95 552 "allowtoken" : 1,
f245a28c
DM
553 "description" : "Add group to 'what' list.",
554 "method" : "POST",
555 "name" : "add_what_group",
556 "parameters" : {
557 "additionalProperties" : 0,
558 "properties" : {
559 "id" : {
560 "description" : "Rule ID.",
561 "type" : "integer",
562 "typetext" : "<integer>"
563 },
564 "ogroup" : {
565 "description" : "Groups ID.",
566 "type" : "integer",
567 "typetext" : "<integer>"
568 }
569 }
570 },
732d76e1
DM
571 "permissions" : {
572 "check" : [
573 "admin"
574 ]
575 },
f245a28c
DM
576 "protected" : 1,
577 "proxyto" : "master",
578 "returns" : {
579 "type" : "null"
580 }
581 }
582 },
583 "leaf" : 0,
584 "path" : "/config/ruledb/rules/{id}/what",
585 "text" : "what"
586 },
587 {
588 "children" : [
589 {
590 "info" : {
591 "DELETE" : {
6bd70b95 592 "allowtoken" : 1,
f245a28c
DM
593 "description" : "Delete group from 'action' list.",
594 "method" : "DELETE",
595 "name" : "delete_action_group",
596 "parameters" : {
597 "additionalProperties" : 0,
598 "properties" : {
599 "id" : {
600 "description" : "Rule ID.",
601 "type" : "integer",
602 "typetext" : "<integer>"
603 },
604 "ogroup" : {
605 "description" : "Groups ID.",
606 "type" : "integer",
607 "typetext" : "<integer>"
608 }
609 }
610 },
732d76e1
DM
611 "permissions" : {
612 "check" : [
613 "admin"
614 ]
615 },
f245a28c
DM
616 "protected" : 1,
617 "proxyto" : "master",
618 "returns" : {
619 "type" : "null"
620 }
621 }
622 },
623 "leaf" : 1,
624 "path" : "/config/ruledb/rules/{id}/action/{ogroup}",
625 "text" : "{ogroup}"
626 }
627 ],
628 "info" : {
629 "GET" : {
6bd70b95 630 "allowtoken" : 1,
f245a28c
DM
631 "description" : "Get 'action' group list.",
632 "method" : "GET",
633 "name" : "action",
634 "parameters" : {
635 "additionalProperties" : 0,
636 "properties" : {
637 "id" : {
638 "description" : "Rule ID.",
639 "type" : "integer",
640 "typetext" : "<integer>"
641 }
642 }
643 },
732d76e1
DM
644 "permissions" : {
645 "check" : [
646 "admin",
647 "audit"
648 ]
649 },
f245a28c
DM
650 "proxyto" : "master",
651 "returns" : {
652 "items" : {
653 "properties" : {
654 "id" : {
655 "type" : "integer"
656 }
657 },
658 "type" : "object"
659 },
660 "type" : "array"
661 }
662 },
663 "POST" : {
6bd70b95 664 "allowtoken" : 1,
f245a28c
DM
665 "description" : "Add group to 'action' list.",
666 "method" : "POST",
667 "name" : "add_action_group",
668 "parameters" : {
669 "additionalProperties" : 0,
670 "properties" : {
671 "id" : {
672 "description" : "Rule ID.",
673 "type" : "integer",
674 "typetext" : "<integer>"
675 },
676 "ogroup" : {
677 "description" : "Groups ID.",
678 "type" : "integer",
679 "typetext" : "<integer>"
680 }
681 }
682 },
732d76e1
DM
683 "permissions" : {
684 "check" : [
685 "admin"
686 ]
687 },
f245a28c
DM
688 "protected" : 1,
689 "proxyto" : "master",
690 "returns" : {
691 "type" : "null"
692 }
693 }
694 },
695 "leaf" : 0,
696 "path" : "/config/ruledb/rules/{id}/action",
697 "text" : "action"
698 }
699 ],
700 "info" : {
701 "DELETE" : {
6bd70b95 702 "allowtoken" : 1,
f245a28c
DM
703 "description" : "Delete rule.",
704 "method" : "DELETE",
705 "name" : "delete_rule",
706 "parameters" : {
707 "additionalProperties" : 0,
708 "properties" : {
709 "id" : {
710 "description" : "Rule ID.",
711 "type" : "integer",
712 "typetext" : "<integer>"
713 }
714 }
715 },
732d76e1
DM
716 "permissions" : {
717 "check" : [
718 "admin"
719 ]
720 },
d7cd791b
DM
721 "protected" : 1,
722 "proxyto" : "master",
f245a28c
DM
723 "returns" : {
724 "type" : "null"
725 }
726 },
727 "GET" : {
6bd70b95 728 "allowtoken" : 1,
f245a28c
DM
729 "description" : "Directory index.",
730 "method" : "GET",
731 "name" : "index",
732 "parameters" : {
733 "additionalProperties" : 0,
734 "properties" : {
735 "id" : {
736 "description" : "Rule ID.",
737 "type" : "integer",
738 "typetext" : "<integer>"
739 }
740 }
741 },
732d76e1
DM
742 "permissions" : {
743 "check" : [
744 "admin",
745 "audit"
746 ]
747 },
f245a28c
DM
748 "returns" : {
749 "items" : {
750 "properties" : {
751 "subdir" : {
752 "type" : "string"
753 }
754 },
755 "type" : "object"
756 },
757 "links" : [
758 {
759 "href" : "{subdir}",
760 "rel" : "child"
761 }
762 ],
763 "type" : "array"
764 }
765 }
766 },
767 "leaf" : 0,
768 "path" : "/config/ruledb/rules/{id}",
769 "text" : "{id}"
770 }
771 ],
772 "info" : {
773 "GET" : {
6bd70b95 774 "allowtoken" : 1,
f245a28c
DM
775 "description" : "Get list of rules.",
776 "method" : "GET",
777 "name" : "list_rules",
778 "parameters" : {
779 "additionalProperties" : 0
780 },
732d76e1
DM
781 "permissions" : {
782 "check" : [
783 "admin",
784 "audit"
785 ]
786 },
f245a28c
DM
787 "proxyto" : "master",
788 "returns" : {
789 "items" : {
790 "properties" : {
791 "id" : {
792 "type" : "integer"
793 }
794 },
795 "type" : "object"
796 },
797 "links" : [
798 {
799 "href" : "{id}",
800 "rel" : "child"
801 }
802 ],
803 "type" : "array"
804 }
805 },
806 "POST" : {
6bd70b95 807 "allowtoken" : 1,
f245a28c
DM
808 "description" : "Create new rule.",
809 "method" : "POST",
810 "name" : "create_rule",
811 "parameters" : {
812 "additionalProperties" : 0,
813 "properties" : {
814 "active" : {
815 "description" : "Flag to activate rule.",
816 "optional" : 1,
817 "type" : "boolean",
818 "typetext" : "<boolean>"
819 },
820 "direction" : {
821 "description" : "Rule direction. Value `0` matches incomming mails, value `1` matches outgoing mails, and value `2` matches both directions.",
822 "maximum" : 2,
823 "minimum" : 0,
824 "optional" : 1,
825 "type" : "integer",
826 "typetext" : "<integer> (0 - 2)"
827 },
828 "name" : {
829 "description" : "Rule name",
830 "type" : "string",
831 "typetext" : "<string>"
832 },
833 "priority" : {
834 "description" : "Rule priotity.",
835 "maximum" : 100,
836 "minimum" : 0,
837 "type" : "integer",
838 "typetext" : "<integer> (0 - 100)"
839 }
840 }
841 },
732d76e1
DM
842 "permissions" : {
843 "check" : [
844 "admin"
845 ]
846 },
f245a28c
DM
847 "protected" : 1,
848 "proxyto" : "master",
849 "returns" : {
850 "type" : "integer"
851 }
852 }
853 },
854 "leaf" : 0,
855 "path" : "/config/ruledb/rules",
856 "text" : "rules"
857 },
858 {
859 "children" : [
860 {
861 "children" : [
862 {
863 "info" : {
864 "DELETE" : {
6bd70b95 865 "allowtoken" : 1,
f245a28c
DM
866 "description" : "Delete 'actions' object.",
867 "method" : "DELETE",
868 "name" : "delete_action",
869 "parameters" : {
870 "additionalProperties" : 0,
871 "properties" : {
872 "id" : {
873 "description" : "Action Object ID.",
874 "pattern" : "\\d+_\\d+",
875 "type" : "string"
876 }
877 }
878 },
732d76e1
DM
879 "permissions" : {
880 "check" : [
881 "admin"
882 ]
883 },
d7cd791b
DM
884 "protected" : 1,
885 "proxyto" : "master",
f245a28c
DM
886 "returns" : {
887 "type" : "null"
888 }
889 }
890 },
891 "leaf" : 1,
892 "path" : "/config/ruledb/action/objects/{id}",
893 "text" : "{id}"
894 }
895 ],
896 "info" : {
897 "GET" : {
6bd70b95 898 "allowtoken" : 1,
f245a28c
DM
899 "description" : "List 'actions' objects.",
900 "method" : "GET",
901 "name" : "list_actions",
902 "parameters" : {
903 "additionalProperties" : 0
904 },
732d76e1
DM
905 "permissions" : {
906 "check" : [
907 "admin",
908 "audit"
909 ]
910 },
d7cd791b 911 "proxyto" : "master",
f245a28c
DM
912 "returns" : {
913 "items" : {
914 "properties" : {
915 "id" : {
916 "description" : "Action Object ID.",
917 "pattern" : "\\d+_\\d+",
918 "type" : "string"
919 }
920 },
921 "type" : "object"
922 },
923 "links" : [
924 {
925 "href" : "{id}",
926 "rel" : "child"
927 }
928 ],
929 "type" : "array"
930 }
931 }
932 },
933 "leaf" : 0,
934 "path" : "/config/ruledb/action/objects",
935 "text" : "objects"
936 },
937 {
938 "children" : [
939 {
940 "info" : {
941 "GET" : {
6bd70b95 942 "allowtoken" : 1,
f245a28c
DM
943 "description" : "Read 'BCC' object settings.",
944 "method" : "GET",
945 "name" : "read_bcc",
946 "parameters" : {
947 "additionalProperties" : 0,
948 "properties" : {
949 "id" : {
950 "description" : "Action Object ID.",
951 "pattern" : "\\d+_\\d+",
952 "type" : "string"
953 }
954 }
955 },
732d76e1
DM
956 "permissions" : {
957 "check" : [
958 "admin",
959 "audit"
960 ]
961 },
f245a28c
DM
962 "proxyto" : "master",
963 "returns" : {
964 "properties" : {
965 "id" : {
966 "type" : "string"
967 }
968 },
969 "type" : "object"
970 }
971 },
972 "PUT" : {
6bd70b95 973 "allowtoken" : 1,
f245a28c
DM
974 "description" : "Update 'BCC' object.",
975 "method" : "PUT",
976 "name" : "update_bcc",
977 "parameters" : {
978 "additionalProperties" : 0,
979 "properties" : {
980 "id" : {
981 "description" : "Action Object ID.",
982 "pattern" : "\\d+_\\d+",
983 "type" : "string"
984 },
985 "info" : {
986 "description" : "Informational comment.",
987 "maxLength" : 255,
988 "optional" : 1,
989 "type" : "string",
990 "typetext" : "<string>"
991 },
992 "name" : {
993 "description" : "Action name.",
994 "maxLength" : 255,
995 "optional" : 1,
996 "type" : "string",
997 "typetext" : "<string>"
998 },
999 "original" : {
1000 "default" : 1,
1001 "description" : "Send the original, unmodified mail.",
1002 "optional" : 1,
1003 "type" : "boolean",
1004 "typetext" : "<boolean>"
1005 },
1006 "target" : {
1007 "description" : "Send a Blind Carbon Copy to this email address.",
1008 "format" : "email",
1009 "type" : "string",
1010 "typetext" : "<string>"
1011 }
1012 }
1013 },
732d76e1
DM
1014 "permissions" : {
1015 "check" : [
1016 "admin"
1017 ]
1018 },
d7cd791b 1019 "protected" : 1,
f245a28c
DM
1020 "proxyto" : "master",
1021 "returns" : {
1022 "type" : "null"
1023 }
1024 }
1025 },
1026 "leaf" : 1,
1027 "path" : "/config/ruledb/action/bcc/{id}",
1028 "text" : "{id}"
1029 }
1030 ],
1031 "info" : {
1032 "POST" : {
6bd70b95 1033 "allowtoken" : 1,
f245a28c
DM
1034 "description" : "Create 'BCC' object.",
1035 "method" : "POST",
1036 "name" : "bcc",
1037 "parameters" : {
1038 "additionalProperties" : 0,
1039 "properties" : {
1040 "info" : {
1041 "description" : "Informational comment.",
1042 "maxLength" : 255,
1043 "optional" : 1,
1044 "type" : "string",
1045 "typetext" : "<string>"
1046 },
1047 "name" : {
1048 "description" : "Action name.",
1049 "maxLength" : 255,
1050 "type" : "string",
1051 "typetext" : "<string>"
1052 },
1053 "original" : {
1054 "default" : 1,
1055 "description" : "Send the original, unmodified mail.",
1056 "optional" : 1,
1057 "type" : "boolean",
1058 "typetext" : "<boolean>"
1059 },
1060 "target" : {
1061 "description" : "Send a Blind Carbon Copy to this email address.",
1062 "format" : "email",
1063 "type" : "string",
1064 "typetext" : "<string>"
1065 }
1066 }
1067 },
732d76e1
DM
1068 "permissions" : {
1069 "check" : [
1070 "admin"
1071 ]
1072 },
d7cd791b 1073 "protected" : 1,
f245a28c
DM
1074 "proxyto" : "master",
1075 "returns" : {
1076 "description" : "The object ID.",
1077 "type" : "string"
1078 }
1079 }
1080 },
1081 "leaf" : 0,
1082 "path" : "/config/ruledb/action/bcc",
1083 "text" : "bcc"
732d76e1 1084 },
f245a28c
DM
1085 {
1086 "children" : [
1087 {
1088 "info" : {
1089 "GET" : {
6bd70b95 1090 "allowtoken" : 1,
732d76e1 1091 "description" : "Read 'Header Attribute' object settings.",
f245a28c 1092 "method" : "GET",
732d76e1 1093 "name" : "read_field",
f245a28c
DM
1094 "parameters" : {
1095 "additionalProperties" : 0,
1096 "properties" : {
732d76e1
DM
1097 "id" : {
1098 "description" : "Action Object ID.",
1099 "pattern" : "\\d+_\\d+",
1100 "type" : "string"
f245a28c
DM
1101 }
1102 }
1103 },
732d76e1
DM
1104 "permissions" : {
1105 "check" : [
1106 "admin",
1107 "audit"
1108 ]
1109 },
f245a28c
DM
1110 "proxyto" : "master",
1111 "returns" : {
1112 "properties" : {
1113 "id" : {
f245a28c
DM
1114 "type" : "string"
1115 }
1116 },
1117 "type" : "object"
1118 }
1119 },
1120 "PUT" : {
6bd70b95 1121 "allowtoken" : 1,
732d76e1 1122 "description" : "Update 'Header Attribute' object.",
f245a28c 1123 "method" : "PUT",
732d76e1 1124 "name" : "update_field",
f245a28c
DM
1125 "parameters" : {
1126 "additionalProperties" : 0,
1127 "properties" : {
732d76e1
DM
1128 "field" : {
1129 "description" : "The Field",
1130 "maxLength" : 1024,
1131 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
1132 "type" : "string"
1133 },
1134 "id" : {
1135 "description" : "Action Object ID.",
1136 "pattern" : "\\d+_\\d+",
1137 "type" : "string"
1138 },
f245a28c
DM
1139 "info" : {
1140 "description" : "Informational comment.",
1141 "maxLength" : 255,
1142 "optional" : 1,
1143 "type" : "string",
1144 "typetext" : "<string>"
1145 },
1146 "name" : {
732d76e1 1147 "description" : "Action name.",
f245a28c
DM
1148 "maxLength" : 255,
1149 "optional" : 1,
1150 "type" : "string",
1151 "typetext" : "<string>"
1152 },
732d76e1
DM
1153 "value" : {
1154 "description" : "The Value",
1155 "maxLength" : 1024,
4a46ced6
DM
1156 "type" : "string",
1157 "typetext" : "<string>"
f245a28c
DM
1158 }
1159 }
1160 },
732d76e1
DM
1161 "permissions" : {
1162 "check" : [
1163 "admin"
1164 ]
1165 },
d7cd791b 1166 "protected" : 1,
f245a28c
DM
1167 "proxyto" : "master",
1168 "returns" : {
1169 "type" : "null"
1170 }
1171 }
1172 },
1173 "leaf" : 1,
732d76e1
DM
1174 "path" : "/config/ruledb/action/field/{id}",
1175 "text" : "{id}"
1176 }
1177 ],
1178 "info" : {
1179 "POST" : {
6bd70b95 1180 "allowtoken" : 1,
732d76e1
DM
1181 "description" : "Create 'Header Attribute' object.",
1182 "method" : "POST",
1183 "name" : "field",
1184 "parameters" : {
1185 "additionalProperties" : 0,
1186 "properties" : {
1187 "field" : {
1188 "description" : "The Field",
1189 "maxLength" : 1024,
1190 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
1191 "type" : "string"
1192 },
f245a28c 1193 "info" : {
732d76e1
DM
1194 "description" : "Informational comment.",
1195 "maxLength" : 255,
1196 "optional" : 1,
1197 "type" : "string",
1198 "typetext" : "<string>"
1199 },
1200 "name" : {
1201 "description" : "Action name.",
1202 "maxLength" : 255,
1203 "type" : "string",
1204 "typetext" : "<string>"
1205 },
1206 "value" : {
1207 "description" : "The Value",
1208 "maxLength" : 1024,
4a46ced6
DM
1209 "type" : "string",
1210 "typetext" : "<string>"
732d76e1
DM
1211 }
1212 }
1213 },
1214 "permissions" : {
1215 "check" : [
1216 "admin"
1217 ]
1218 },
1219 "protected" : 1,
1220 "proxyto" : "master",
1221 "returns" : {
1222 "description" : "The object ID.",
1223 "type" : "string"
1224 }
1225 }
1226 },
1227 "leaf" : 0,
1228 "path" : "/config/ruledb/action/field",
1229 "text" : "field"
1230 },
1231 {
1232 "children" : [
1233 {
1234 "info" : {
1235 "GET" : {
6bd70b95 1236 "allowtoken" : 1,
732d76e1
DM
1237 "description" : "Read 'Notification' object settings.",
1238 "method" : "GET",
1239 "name" : "read_notification",
1240 "parameters" : {
1241 "additionalProperties" : 0,
1242 "properties" : {
1243 "id" : {
1244 "description" : "Action Object ID.",
1245 "pattern" : "\\d+_\\d+",
1246 "type" : "string"
1247 }
1248 }
1249 },
1250 "permissions" : {
1251 "check" : [
1252 "admin",
1253 "audit"
1254 ]
1255 },
1256 "proxyto" : "master",
1257 "returns" : {
1258 "properties" : {
1259 "id" : {
1260 "type" : "string"
1261 }
1262 },
1263 "type" : "object"
1264 }
1265 },
1266 "PUT" : {
6bd70b95 1267 "allowtoken" : 1,
732d76e1
DM
1268 "description" : "Update 'Notification' object.",
1269 "method" : "PUT",
1270 "name" : "update_notification",
1271 "parameters" : {
1272 "additionalProperties" : 0,
1273 "properties" : {
1274 "attach" : {
1275 "default" : 0,
1276 "description" : "Attach original E-Mail",
1277 "optional" : 1,
1278 "type" : "boolean",
1279 "typetext" : "<boolean>"
1280 },
1281 "body" : {
1282 "description" : "The Notification Body",
1283 "maxLength" : 2048,
1284 "type" : "string",
1285 "typetext" : "<string>"
1286 },
1287 "id" : {
1288 "description" : "Action Object ID.",
1289 "pattern" : "\\d+_\\d+",
1290 "type" : "string"
1291 },
1292 "info" : {
1293 "description" : "Informational comment.",
1294 "maxLength" : 255,
1295 "optional" : 1,
1296 "type" : "string",
1297 "typetext" : "<string>"
1298 },
1299 "name" : {
1300 "description" : "Action name.",
1301 "maxLength" : 255,
1302 "optional" : 1,
1303 "type" : "string",
1304 "typetext" : "<string>"
1305 },
1306 "subject" : {
1307 "description" : "The Notification subject",
1308 "maxLength" : 100,
1309 "type" : "string",
1310 "typetext" : "<string>"
1311 },
1312 "to" : {
1313 "description" : "The Receiver E-Mail address",
1314 "maxLength" : 200,
1315 "type" : "string",
1316 "typetext" : "<string>"
1317 }
1318 }
1319 },
1320 "permissions" : {
1321 "check" : [
1322 "admin"
1323 ]
1324 },
1325 "protected" : 1,
1326 "proxyto" : "master",
1327 "returns" : {
1328 "type" : "null"
1329 }
1330 }
1331 },
1332 "leaf" : 1,
1333 "path" : "/config/ruledb/action/notification/{id}",
1334 "text" : "{id}"
1335 }
1336 ],
1337 "info" : {
1338 "POST" : {
6bd70b95 1339 "allowtoken" : 1,
732d76e1
DM
1340 "description" : "Create 'Notification' object.",
1341 "method" : "POST",
1342 "name" : "notification",
1343 "parameters" : {
1344 "additionalProperties" : 0,
1345 "properties" : {
1346 "attach" : {
1347 "default" : 0,
1348 "description" : "Attach original E-Mail",
1349 "optional" : 1,
1350 "type" : "boolean",
1351 "typetext" : "<boolean>"
1352 },
1353 "body" : {
1354 "description" : "The Notification Body",
1355 "maxLength" : 2048,
1356 "type" : "string",
1357 "typetext" : "<string>"
1358 },
1359 "info" : {
1360 "description" : "Informational comment.",
1361 "maxLength" : 255,
1362 "optional" : 1,
1363 "type" : "string",
1364 "typetext" : "<string>"
1365 },
1366 "name" : {
1367 "description" : "Action name.",
1368 "maxLength" : 255,
1369 "type" : "string",
1370 "typetext" : "<string>"
1371 },
1372 "subject" : {
1373 "description" : "The Notification subject",
1374 "maxLength" : 100,
1375 "type" : "string",
1376 "typetext" : "<string>"
1377 },
1378 "to" : {
1379 "description" : "The Receiver E-Mail address",
1380 "maxLength" : 200,
1381 "type" : "string",
1382 "typetext" : "<string>"
1383 }
1384 }
1385 },
1386 "permissions" : {
1387 "check" : [
1388 "admin"
1389 ]
1390 },
1391 "protected" : 1,
1392 "proxyto" : "master",
1393 "returns" : {
1394 "description" : "The object ID.",
1395 "type" : "string"
1396 }
1397 }
1398 },
1399 "leaf" : 0,
1400 "path" : "/config/ruledb/action/notification",
1401 "text" : "notification"
1402 },
1403 {
1404 "children" : [
1405 {
1406 "info" : {
1407 "GET" : {
6bd70b95 1408 "allowtoken" : 1,
732d76e1
DM
1409 "description" : "Read 'Disclaimer' object settings.",
1410 "method" : "GET",
1411 "name" : "read_disclaimer",
1412 "parameters" : {
1413 "additionalProperties" : 0,
1414 "properties" : {
1415 "id" : {
1416 "description" : "Action Object ID.",
1417 "pattern" : "\\d+_\\d+",
1418 "type" : "string"
1419 }
1420 }
1421 },
1422 "permissions" : {
1423 "check" : [
1424 "admin",
1425 "audit"
1426 ]
1427 },
1428 "proxyto" : "master",
1429 "returns" : {
1430 "properties" : {
1431 "id" : {
1432 "type" : "string"
1433 }
1434 },
1435 "type" : "object"
1436 }
1437 },
1438 "PUT" : {
6bd70b95 1439 "allowtoken" : 1,
732d76e1
DM
1440 "description" : "Update 'Disclaimer' object.",
1441 "method" : "PUT",
1442 "name" : "update_disclaimer",
1443 "parameters" : {
1444 "additionalProperties" : 0,
1445 "properties" : {
1446 "disclaimer" : {
1447 "description" : "The Disclaimer",
1448 "maxLength" : 2048,
1449 "type" : "string",
1450 "typetext" : "<string>"
1451 },
1452 "id" : {
1453 "description" : "Action Object ID.",
1454 "pattern" : "\\d+_\\d+",
1455 "type" : "string"
1456 },
1457 "info" : {
1458 "description" : "Informational comment.",
1459 "maxLength" : 255,
1460 "optional" : 1,
1461 "type" : "string",
1462 "typetext" : "<string>"
1463 },
1464 "name" : {
1465 "description" : "Action name.",
1466 "maxLength" : 255,
1467 "optional" : 1,
1468 "type" : "string",
1469 "typetext" : "<string>"
1470 }
1471 }
1472 },
1473 "permissions" : {
1474 "check" : [
1475 "admin"
1476 ]
1477 },
1478 "protected" : 1,
1479 "proxyto" : "master",
1480 "returns" : {
1481 "type" : "null"
1482 }
1483 }
1484 },
1485 "leaf" : 1,
1486 "path" : "/config/ruledb/action/disclaimer/{id}",
1487 "text" : "{id}"
1488 }
1489 ],
1490 "info" : {
1491 "POST" : {
6bd70b95 1492 "allowtoken" : 1,
732d76e1
DM
1493 "description" : "Create 'Disclaimer' object.",
1494 "method" : "POST",
1495 "name" : "disclaimer",
1496 "parameters" : {
1497 "additionalProperties" : 0,
1498 "properties" : {
1499 "disclaimer" : {
1500 "description" : "The Disclaimer",
1501 "maxLength" : 2048,
1502 "type" : "string",
1503 "typetext" : "<string>"
1504 },
1505 "info" : {
1506 "description" : "Informational comment.",
1507 "maxLength" : 255,
1508 "optional" : 1,
1509 "type" : "string",
1510 "typetext" : "<string>"
1511 },
1512 "name" : {
1513 "description" : "Action name.",
1514 "maxLength" : 255,
1515 "type" : "string",
1516 "typetext" : "<string>"
1517 }
1518 }
1519 },
1520 "permissions" : {
1521 "check" : [
1522 "admin"
1523 ]
1524 },
1525 "protected" : 1,
1526 "proxyto" : "master",
1527 "returns" : {
1528 "description" : "The object ID.",
1529 "type" : "string"
1530 }
1531 }
1532 },
1533 "leaf" : 0,
1534 "path" : "/config/ruledb/action/disclaimer",
1535 "text" : "disclaimer"
1536 },
1537 {
1538 "children" : [
1539 {
1540 "info" : {
1541 "GET" : {
6bd70b95 1542 "allowtoken" : 1,
732d76e1
DM
1543 "description" : "Read 'Remove attachments' object settings.",
1544 "method" : "GET",
1545 "name" : "read_removeattachments",
1546 "parameters" : {
1547 "additionalProperties" : 0,
1548 "properties" : {
1549 "id" : {
1550 "description" : "Action Object ID.",
1551 "pattern" : "\\d+_\\d+",
1552 "type" : "string"
1553 }
1554 }
1555 },
1556 "permissions" : {
1557 "check" : [
1558 "admin",
1559 "audit"
1560 ]
1561 },
1562 "proxyto" : "master",
1563 "returns" : {
1564 "properties" : {
1565 "id" : {
1566 "type" : "string"
1567 }
1568 },
1569 "type" : "object"
1570 }
1571 },
1572 "PUT" : {
6bd70b95 1573 "allowtoken" : 1,
732d76e1
DM
1574 "description" : "Update 'Remove attachments' object.",
1575 "method" : "PUT",
1576 "name" : "update_removeattachments",
1577 "parameters" : {
1578 "additionalProperties" : 0,
1579 "properties" : {
1580 "all" : {
1581 "description" : "Remove all attachments",
1582 "optional" : 1,
1583 "type" : "boolean",
1584 "typetext" : "<boolean>"
1585 },
1586 "id" : {
1587 "description" : "Action Object ID.",
1588 "pattern" : "\\d+_\\d+",
1589 "type" : "string"
1590 },
1591 "info" : {
1592 "description" : "Informational comment.",
1593 "maxLength" : 255,
1594 "optional" : 1,
1595 "type" : "string",
1596 "typetext" : "<string>"
1597 },
1598 "name" : {
1599 "description" : "Action name.",
1600 "maxLength" : 255,
1601 "optional" : 1,
1602 "type" : "string",
1603 "typetext" : "<string>"
1604 },
d210277a
TL
1605 "quarantine" : {
1606 "default" : 0,
1607 "description" : "Copy original mail to attachment Quarantine.",
1608 "optional" : 1,
1609 "type" : "boolean",
1610 "typetext" : "<boolean>"
1611 },
732d76e1
DM
1612 "text" : {
1613 "description" : "The replacement text.",
1614 "maxLength" : 2048,
1615 "type" : "string",
1616 "typetext" : "<string>"
1617 }
1618 }
1619 },
1620 "permissions" : {
1621 "check" : [
1622 "admin"
1623 ]
1624 },
1625 "protected" : 1,
1626 "proxyto" : "master",
1627 "returns" : {
1628 "type" : "null"
1629 }
1630 }
1631 },
1632 "leaf" : 1,
1633 "path" : "/config/ruledb/action/removeattachments/{id}",
1634 "text" : "{id}"
1635 }
1636 ],
1637 "info" : {
1638 "POST" : {
6bd70b95 1639 "allowtoken" : 1,
732d76e1
DM
1640 "description" : "Create 'Remove attachments' object.",
1641 "method" : "POST",
1642 "name" : "removeattachments",
1643 "parameters" : {
1644 "additionalProperties" : 0,
1645 "properties" : {
1646 "all" : {
1647 "description" : "Remove all attachments",
1648 "optional" : 1,
1649 "type" : "boolean",
1650 "typetext" : "<boolean>"
1651 },
1652 "info" : {
1653 "description" : "Informational comment.",
1654 "maxLength" : 255,
1655 "optional" : 1,
1656 "type" : "string",
1657 "typetext" : "<string>"
1658 },
1659 "name" : {
1660 "description" : "Action name.",
1661 "maxLength" : 255,
1662 "type" : "string",
1663 "typetext" : "<string>"
1664 },
d210277a
TL
1665 "quarantine" : {
1666 "default" : 0,
1667 "description" : "Copy original mail to attachment Quarantine.",
1668 "optional" : 1,
1669 "type" : "boolean",
1670 "typetext" : "<boolean>"
1671 },
732d76e1
DM
1672 "text" : {
1673 "description" : "The replacement text.",
1674 "maxLength" : 2048,
1675 "type" : "string",
1676 "typetext" : "<string>"
1677 }
1678 }
1679 },
1680 "permissions" : {
1681 "check" : [
1682 "admin"
1683 ]
1684 },
1685 "protected" : 1,
1686 "proxyto" : "master",
1687 "returns" : {
1688 "description" : "The object ID.",
1689 "type" : "string"
1690 }
1691 }
1692 },
1693 "leaf" : 0,
1694 "path" : "/config/ruledb/action/removeattachments",
1695 "text" : "removeattachments"
1696 }
1697 ],
1698 "info" : {
1699 "GET" : {
6bd70b95 1700 "allowtoken" : 1,
732d76e1
DM
1701 "description" : "Directory index.",
1702 "method" : "GET",
1703 "name" : "index",
1704 "parameters" : {
1705 "additionalProperties" : 0
1706 },
1707 "permissions" : {
1708 "check" : [
1709 "admin",
1710 "audit"
1711 ]
1712 },
1713 "returns" : {
1714 "items" : {
1715 "properties" : {
1716 "subdir" : {
1717 "type" : "string"
1718 }
1719 },
1720 "type" : "object"
1721 },
1722 "links" : [
1723 {
1724 "href" : "{subdir}",
1725 "rel" : "child"
1726 }
1727 ],
1728 "type" : "array"
1729 }
1730 }
1731 },
1732 "leaf" : 0,
1733 "path" : "/config/ruledb/action",
1734 "text" : "action"
1735 },
1736 {
1737 "children" : [
1738 {
1739 "children" : [
1740 {
1741 "info" : {
1742 "GET" : {
6bd70b95 1743 "allowtoken" : 1,
732d76e1
DM
1744 "description" : "Get 'what' group properties",
1745 "method" : "GET",
1746 "name" : "get_config",
1747 "parameters" : {
1748 "additionalProperties" : 0,
1749 "properties" : {
1750 "ogroup" : {
1751 "description" : "Object Group ID.",
1752 "type" : "integer",
1753 "typetext" : "<integer>"
1754 }
1755 }
1756 },
1757 "permissions" : {
1758 "check" : [
1759 "admin",
1760 "audit"
1761 ]
1762 },
1763 "proxyto" : "master",
1764 "returns" : {
1765 "properties" : {
1766 "id" : {
1767 "type" : "integer"
1768 },
1769 "info" : {
1770 "type" : "string"
1771 },
1772 "name" : {
1773 "type" : "string"
1774 }
1775 },
1776 "type" : "object"
1777 }
1778 },
1779 "PUT" : {
6bd70b95 1780 "allowtoken" : 1,
732d76e1
DM
1781 "description" : "Modify 'what' group properties",
1782 "method" : "PUT",
1783 "name" : "set_config",
1784 "parameters" : {
1785 "additionalProperties" : 0,
1786 "properties" : {
1787 "info" : {
1788 "description" : "Informational comment.",
1789 "maxLength" : 255,
1790 "optional" : 1,
1791 "type" : "string",
1792 "typetext" : "<string>"
1793 },
1794 "name" : {
1795 "description" : "Group name.",
1796 "maxLength" : 255,
1797 "optional" : 1,
1798 "type" : "string",
1799 "typetext" : "<string>"
1800 },
1801 "ogroup" : {
1802 "description" : "Object Group ID.",
1803 "type" : "integer",
1804 "typetext" : "<integer>"
1805 }
1806 }
1807 },
1808 "permissions" : {
1809 "check" : [
1810 "admin"
1811 ]
1812 },
1813 "protected" : 1,
1814 "proxyto" : "master",
1815 "returns" : {
1816 "type" : "null"
1817 }
1818 }
1819 },
1820 "leaf" : 1,
1821 "path" : "/config/ruledb/what/{ogroup}/config",
1822 "text" : "config"
1823 },
1824 {
1825 "children" : [
1826 {
1827 "info" : {
1828 "DELETE" : {
6bd70b95 1829 "allowtoken" : 1,
732d76e1
DM
1830 "description" : "Remove an object from the 'what' group.",
1831 "method" : "DELETE",
1832 "name" : "delete_object",
1833 "parameters" : {
1834 "additionalProperties" : 0,
1835 "properties" : {
1836 "id" : {
1837 "description" : "Object ID.",
1838 "type" : "integer",
1839 "typetext" : "<integer>"
1840 },
1841 "ogroup" : {
1842 "description" : "Object Group ID.",
1843 "type" : "integer",
1844 "typetext" : "<integer>"
1845 }
1846 }
1847 },
1848 "permissions" : {
1849 "check" : [
1850 "admin"
1851 ]
1852 },
1853 "protected" : 1,
1854 "proxyto" : "master",
f245a28c
DM
1855 "returns" : {
1856 "type" : "null"
1857 }
1858 }
1859 },
1860 "leaf" : 1,
1861 "path" : "/config/ruledb/what/{ogroup}/objects/{id}",
1862 "text" : "{id}"
1863 }
1864 ],
1865 "info" : {
1866 "GET" : {
6bd70b95 1867 "allowtoken" : 1,
f245a28c
DM
1868 "description" : "List 'what' group objects.",
1869 "method" : "GET",
1870 "name" : "objects",
1871 "parameters" : {
1872 "additionalProperties" : 0,
1873 "properties" : {
1874 "ogroup" : {
1875 "description" : "Object Group ID.",
1876 "type" : "integer",
1877 "typetext" : "<integer>"
1878 }
1879 }
1880 },
732d76e1
DM
1881 "permissions" : {
1882 "check" : [
1883 "admin",
1884 "audit"
1885 ]
1886 },
f245a28c
DM
1887 "proxyto" : "master",
1888 "returns" : {
1889 "items" : {
1890 "properties" : {
1891 "id" : {
1892 "type" : "integer"
1893 }
1894 },
1895 "type" : "object"
1896 },
1897 "links" : [
1898 {
1899 "href" : "{id}",
1900 "rel" : "child"
1901 }
1902 ],
1903 "type" : "array"
1904 }
1905 }
1906 },
1907 "leaf" : 0,
1908 "path" : "/config/ruledb/what/{ogroup}/objects",
1909 "text" : "objects"
f245a28c 1910 },
9fda36b0
DM
1911 {
1912 "children" : [
1913 {
1914 "info" : {
1915 "GET" : {
6bd70b95 1916 "allowtoken" : 1,
9fda36b0
DM
1917 "description" : "Read 'ContentType Filter' object settings.",
1918 "method" : "GET",
1919 "name" : "read_contenttype",
1920 "parameters" : {
1921 "additionalProperties" : 0,
1922 "properties" : {
1923 "id" : {
1924 "description" : "Object ID.",
1925 "type" : "integer",
1926 "typetext" : "<integer>"
1927 },
1928 "ogroup" : {
1929 "description" : "Object Groups ID.",
1930 "type" : "integer",
1931 "typetext" : "<integer>"
1932 }
1933 }
1934 },
c061d61d
DM
1935 "permissions" : {
1936 "check" : [
1937 "admin",
1938 "audit"
1939 ]
1940 },
9fda36b0
DM
1941 "proxyto" : "master",
1942 "returns" : {
1943 "properties" : {
1944 "id" : {
1945 "type" : "integer"
1946 }
1947 },
1948 "type" : "object"
1949 }
1950 },
1951 "PUT" : {
6bd70b95 1952 "allowtoken" : 1,
9fda36b0
DM
1953 "description" : "Update 'ContentType Filter' object.",
1954 "method" : "PUT",
1955 "name" : "update_contenttype",
1956 "parameters" : {
1957 "additionalProperties" : 0,
1958 "properties" : {
1959 "contenttype" : {
1960 "description" : "Content Type",
1961 "maxLength" : 1024,
1962 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
1963 "type" : "string"
1964 },
1965 "id" : {
1966 "description" : "Object ID.",
1967 "type" : "integer",
1968 "typetext" : "<integer>"
1969 },
1970 "ogroup" : {
1971 "description" : "Object Groups ID.",
1972 "type" : "integer",
1973 "typetext" : "<integer>"
1974 }
1975 }
1976 },
c061d61d
DM
1977 "permissions" : {
1978 "check" : [
1979 "admin"
1980 ]
1981 },
9fda36b0
DM
1982 "protected" : 1,
1983 "proxyto" : "master",
1984 "returns" : {
1985 "type" : "null"
1986 }
f245a28c
DM
1987 }
1988 },
9fda36b0
DM
1989 "leaf" : 1,
1990 "path" : "/config/ruledb/what/{ogroup}/contenttype/{id}",
1991 "text" : "{id}"
eff914dc 1992 }
9fda36b0 1993 ],
f245a28c 1994 "info" : {
9fda36b0 1995 "POST" : {
6bd70b95 1996 "allowtoken" : 1,
9fda36b0
DM
1997 "description" : "Add 'ContentType Filter' object.",
1998 "method" : "POST",
1999 "name" : "contenttype",
f245a28c
DM
2000 "parameters" : {
2001 "additionalProperties" : 0,
2002 "properties" : {
9fda36b0
DM
2003 "contenttype" : {
2004 "description" : "Content Type",
2005 "maxLength" : 1024,
2006 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
f245a28c 2007 "type" : "string"
f245a28c
DM
2008 },
2009 "ogroup" : {
9fda36b0 2010 "description" : "Object Groups ID.",
f245a28c
DM
2011 "type" : "integer",
2012 "typetext" : "<integer>"
2013 }
2014 }
2015 },
c061d61d
DM
2016 "permissions" : {
2017 "check" : [
2018 "admin"
2019 ]
2020 },
d7cd791b 2021 "protected" : 1,
f245a28c
DM
2022 "proxyto" : "master",
2023 "returns" : {
9fda36b0
DM
2024 "description" : "The object ID.",
2025 "type" : "integer"
f245a28c
DM
2026 }
2027 }
2028 },
9fda36b0
DM
2029 "leaf" : 0,
2030 "path" : "/config/ruledb/what/{ogroup}/contenttype",
2031 "text" : "contenttype"
f245a28c
DM
2032 },
2033 {
2034 "children" : [
2035 {
2036 "info" : {
9fda36b0 2037 "GET" : {
6bd70b95 2038 "allowtoken" : 1,
9fda36b0
DM
2039 "description" : "Read 'Match Field' object settings.",
2040 "method" : "GET",
2041 "name" : "read_matchfield",
f245a28c
DM
2042 "parameters" : {
2043 "additionalProperties" : 0,
2044 "properties" : {
2045 "id" : {
2046 "description" : "Object ID.",
2047 "type" : "integer",
2048 "typetext" : "<integer>"
2049 },
2050 "ogroup" : {
9fda36b0 2051 "description" : "Object Groups ID.",
f245a28c
DM
2052 "type" : "integer",
2053 "typetext" : "<integer>"
2054 }
2055 }
2056 },
c061d61d
DM
2057 "permissions" : {
2058 "check" : [
2059 "admin",
2060 "audit"
2061 ]
2062 },
f245a28c
DM
2063 "proxyto" : "master",
2064 "returns" : {
9fda36b0
DM
2065 "properties" : {
2066 "id" : {
2067 "type" : "integer"
2068 }
2069 },
2070 "type" : "object"
f245a28c 2071 }
9fda36b0
DM
2072 },
2073 "PUT" : {
6bd70b95 2074 "allowtoken" : 1,
9fda36b0
DM
2075 "description" : "Update 'Match Field' object.",
2076 "method" : "PUT",
2077 "name" : "update_matchfield",
2078 "parameters" : {
2079 "additionalProperties" : 0,
2080 "properties" : {
2081 "field" : {
2082 "description" : "The Field",
2083 "maxLength" : 1024,
2084 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2085 "type" : "string"
2086 },
2087 "id" : {
2088 "description" : "Object ID.",
2089 "type" : "integer",
2090 "typetext" : "<integer>"
2091 },
2092 "ogroup" : {
2093 "description" : "Object Groups ID.",
2094 "type" : "integer",
2095 "typetext" : "<integer>"
2096 },
2097 "value" : {
2098 "description" : "The Value",
2099 "maxLength" : 1024,
4a46ced6
DM
2100 "type" : "string",
2101 "typetext" : "<string>"
9fda36b0
DM
2102 }
2103 }
2104 },
c061d61d
DM
2105 "permissions" : {
2106 "check" : [
2107 "admin"
2108 ]
2109 },
9fda36b0
DM
2110 "protected" : 1,
2111 "proxyto" : "master",
2112 "returns" : {
2113 "type" : "null"
2114 }
2115 }
2116 },
2117 "leaf" : 1,
2118 "path" : "/config/ruledb/what/{ogroup}/matchfield/{id}",
2119 "text" : "{id}"
2120 }
2121 ],
f245a28c 2122 "info" : {
9fda36b0 2123 "POST" : {
6bd70b95 2124 "allowtoken" : 1,
9fda36b0
DM
2125 "description" : "Add 'Match Field' object.",
2126 "method" : "POST",
2127 "name" : "matchfield",
f245a28c
DM
2128 "parameters" : {
2129 "additionalProperties" : 0,
2130 "properties" : {
9fda36b0
DM
2131 "field" : {
2132 "description" : "The Field",
2133 "maxLength" : 1024,
2134 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2135 "type" : "string"
2136 },
f245a28c 2137 "ogroup" : {
9fda36b0 2138 "description" : "Object Groups ID.",
f245a28c
DM
2139 "type" : "integer",
2140 "typetext" : "<integer>"
9fda36b0
DM
2141 },
2142 "value" : {
2143 "description" : "The Value",
2144 "maxLength" : 1024,
4a46ced6
DM
2145 "type" : "string",
2146 "typetext" : "<string>"
f245a28c
DM
2147 }
2148 }
2149 },
c061d61d
DM
2150 "permissions" : {
2151 "check" : [
2152 "admin"
2153 ]
2154 },
9fda36b0 2155 "protected" : 1,
f245a28c
DM
2156 "proxyto" : "master",
2157 "returns" : {
9fda36b0
DM
2158 "description" : "The object ID.",
2159 "type" : "integer"
f245a28c
DM
2160 }
2161 }
2162 },
2163 "leaf" : 0,
9fda36b0
DM
2164 "path" : "/config/ruledb/what/{ogroup}/matchfield",
2165 "text" : "matchfield"
f245a28c
DM
2166 },
2167 {
2168 "children" : [
2169 {
2170 "info" : {
2171 "GET" : {
6bd70b95 2172 "allowtoken" : 1,
9fda36b0 2173 "description" : "Read 'Spam Filter' object settings.",
f245a28c 2174 "method" : "GET",
9fda36b0 2175 "name" : "read_spamfilter",
f245a28c
DM
2176 "parameters" : {
2177 "additionalProperties" : 0,
2178 "properties" : {
2179 "id" : {
2180 "description" : "Object ID.",
2181 "type" : "integer",
2182 "typetext" : "<integer>"
2183 },
2184 "ogroup" : {
2185 "description" : "Object Groups ID.",
2186 "type" : "integer",
2187 "typetext" : "<integer>"
2188 }
2189 }
2190 },
c061d61d
DM
2191 "permissions" : {
2192 "check" : [
2193 "admin",
2194 "audit"
2195 ]
2196 },
f245a28c
DM
2197 "proxyto" : "master",
2198 "returns" : {
2199 "properties" : {
2200 "id" : {
2201 "type" : "integer"
2202 }
2203 },
2204 "type" : "object"
2205 }
2206 },
2207 "PUT" : {
6bd70b95 2208 "allowtoken" : 1,
9fda36b0 2209 "description" : "Update 'Spam Filter' object.",
f245a28c 2210 "method" : "PUT",
9fda36b0 2211 "name" : "update_spamfilter",
f245a28c
DM
2212 "parameters" : {
2213 "additionalProperties" : 0,
2214 "properties" : {
f245a28c
DM
2215 "id" : {
2216 "description" : "Object ID.",
2217 "type" : "integer",
2218 "typetext" : "<integer>"
2219 },
2220 "ogroup" : {
2221 "description" : "Object Groups ID.",
2222 "type" : "integer",
2223 "typetext" : "<integer>"
2224 },
9fda36b0
DM
2225 "spamlevel" : {
2226 "description" : "Spam Level",
2227 "minimum" : 0,
2228 "type" : "integer",
2229 "typetext" : "<integer> (0 - N)"
f245a28c
DM
2230 }
2231 }
2232 },
c061d61d
DM
2233 "permissions" : {
2234 "check" : [
2235 "admin"
2236 ]
2237 },
a55e94a6 2238 "protected" : 1,
f245a28c
DM
2239 "proxyto" : "master",
2240 "returns" : {
2241 "type" : "null"
2242 }
2243 }
2244 },
2245 "leaf" : 1,
9fda36b0 2246 "path" : "/config/ruledb/what/{ogroup}/spamfilter/{id}",
f245a28c
DM
2247 "text" : "{id}"
2248 }
2249 ],
2250 "info" : {
2251 "POST" : {
6bd70b95 2252 "allowtoken" : 1,
9fda36b0 2253 "description" : "Add 'Spam Filter' object.",
f245a28c 2254 "method" : "POST",
9fda36b0 2255 "name" : "spamfilter",
f245a28c
DM
2256 "parameters" : {
2257 "additionalProperties" : 0,
2258 "properties" : {
f245a28c
DM
2259 "ogroup" : {
2260 "description" : "Object Groups ID.",
2261 "type" : "integer",
2262 "typetext" : "<integer>"
2263 },
9fda36b0
DM
2264 "spamlevel" : {
2265 "description" : "Spam Level",
2266 "minimum" : 0,
2267 "type" : "integer",
2268 "typetext" : "<integer> (0 - N)"
f245a28c
DM
2269 }
2270 }
2271 },
c061d61d
DM
2272 "permissions" : {
2273 "check" : [
2274 "admin"
2275 ]
2276 },
a55e94a6 2277 "protected" : 1,
f245a28c
DM
2278 "proxyto" : "master",
2279 "returns" : {
2280 "description" : "The object ID.",
2281 "type" : "integer"
2282 }
2283 }
2284 },
2285 "leaf" : 0,
9fda36b0
DM
2286 "path" : "/config/ruledb/what/{ogroup}/spamfilter",
2287 "text" : "spamfilter"
410dc2c9 2288 },
9fda36b0
DM
2289 {
2290 "children" : [
2291 {
2292 "info" : {
2293 "GET" : {
6bd70b95 2294 "allowtoken" : 1,
9fda36b0
DM
2295 "description" : "Read 'Archive Filter' object settings.",
2296 "method" : "GET",
2297 "name" : "read_archivefilter",
2298 "parameters" : {
2299 "additionalProperties" : 0,
2300 "properties" : {
2301 "id" : {
2302 "description" : "Object ID.",
2303 "type" : "integer",
2304 "typetext" : "<integer>"
2305 },
2306 "ogroup" : {
2307 "description" : "Object Groups ID.",
2308 "type" : "integer",
2309 "typetext" : "<integer>"
2310 }
2311 }
2312 },
c061d61d
DM
2313 "permissions" : {
2314 "check" : [
2315 "admin",
2316 "audit"
2317 ]
2318 },
9fda36b0
DM
2319 "proxyto" : "master",
2320 "returns" : {
2321 "properties" : {
2322 "id" : {
2323 "type" : "integer"
2324 }
2325 },
2326 "type" : "object"
2327 }
2328 },
2329 "PUT" : {
6bd70b95 2330 "allowtoken" : 1,
9fda36b0
DM
2331 "description" : "Update 'Archive Filter' object.",
2332 "method" : "PUT",
2333 "name" : "update_archivefilter",
2334 "parameters" : {
2335 "additionalProperties" : 0,
2336 "properties" : {
2337 "contenttype" : {
2338 "description" : "Content Type",
2339 "maxLength" : 1024,
2340 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2341 "type" : "string"
2342 },
2343 "id" : {
2344 "description" : "Object ID.",
2345 "type" : "integer",
2346 "typetext" : "<integer>"
2347 },
2348 "ogroup" : {
2349 "description" : "Object Groups ID.",
2350 "type" : "integer",
2351 "typetext" : "<integer>"
2352 }
2353 }
2354 },
c061d61d
DM
2355 "permissions" : {
2356 "check" : [
2357 "admin"
2358 ]
2359 },
9fda36b0
DM
2360 "protected" : 1,
2361 "proxyto" : "master",
2362 "returns" : {
2363 "type" : "null"
2364 }
2365 }
2366 },
2367 "leaf" : 1,
2368 "path" : "/config/ruledb/what/{ogroup}/archivefilter/{id}",
2369 "text" : "{id}"
f245a28c 2370 }
9fda36b0
DM
2371 ],
2372 "info" : {
2373 "POST" : {
6bd70b95 2374 "allowtoken" : 1,
9fda36b0
DM
2375 "description" : "Add 'Archive Filter' object.",
2376 "method" : "POST",
2377 "name" : "archivefilter",
2378 "parameters" : {
2379 "additionalProperties" : 0,
2380 "properties" : {
2381 "contenttype" : {
2382 "description" : "Content Type",
2383 "maxLength" : 1024,
2384 "pattern" : "[0-9a-zA-Z\\/\\\\[\\]\\+\\-\\.\\*\\_]+",
2385 "type" : "string"
2386 },
2387 "ogroup" : {
2388 "description" : "Object Groups ID.",
2389 "type" : "integer",
2390 "typetext" : "<integer>"
2391 }
f245a28c
DM
2392 }
2393 },
c061d61d
DM
2394 "permissions" : {
2395 "check" : [
2396 "admin"
2397 ]
2398 },
9fda36b0
DM
2399 "protected" : 1,
2400 "proxyto" : "master",
2401 "returns" : {
2402 "description" : "The object ID.",
2403 "type" : "integer"
f245a28c 2404 }
eff914dc
DM
2405 }
2406 },
9fda36b0 2407 "leaf" : 0,
732d76e1
DM
2408 "path" : "/config/ruledb/what/{ogroup}/archivefilter",
2409 "text" : "archivefilter"
2410 },
2411 {
2412 "children" : [
2413 {
2414 "info" : {
2415 "GET" : {
6bd70b95 2416 "allowtoken" : 1,
732d76e1
DM
2417 "description" : "Read 'Match Filename' object settings.",
2418 "method" : "GET",
2419 "name" : "read_filenamefilter",
2420 "parameters" : {
2421 "additionalProperties" : 0,
2422 "properties" : {
2423 "id" : {
2424 "description" : "Object ID.",
2425 "type" : "integer",
2426 "typetext" : "<integer>"
2427 },
2428 "ogroup" : {
2429 "description" : "Object Groups ID.",
2430 "type" : "integer",
2431 "typetext" : "<integer>"
2432 }
2433 }
2434 },
c061d61d
DM
2435 "permissions" : {
2436 "check" : [
2437 "admin",
2438 "audit"
2439 ]
2440 },
732d76e1
DM
2441 "proxyto" : "master",
2442 "returns" : {
2443 "properties" : {
2444 "id" : {
2445 "type" : "integer"
2446 }
2447 },
2448 "type" : "object"
2449 }
2450 },
2451 "PUT" : {
6bd70b95 2452 "allowtoken" : 1,
732d76e1
DM
2453 "description" : "Update 'Match Filename' object.",
2454 "method" : "PUT",
2455 "name" : "update_filenamefilter",
2456 "parameters" : {
2457 "additionalProperties" : 0,
2458 "properties" : {
2459 "filename" : {
2460 "description" : "Filename filter",
2461 "maxLength" : 1024,
2462 "type" : "string",
2463 "typetext" : "<string>"
2464 },
2465 "id" : {
2466 "description" : "Object ID.",
2467 "type" : "integer",
2468 "typetext" : "<integer>"
2469 },
2470 "ogroup" : {
2471 "description" : "Object Groups ID.",
2472 "type" : "integer",
2473 "typetext" : "<integer>"
2474 }
2475 }
2476 },
c061d61d
DM
2477 "permissions" : {
2478 "check" : [
2479 "admin"
2480 ]
2481 },
732d76e1
DM
2482 "protected" : 1,
2483 "proxyto" : "master",
2484 "returns" : {
2485 "type" : "null"
2486 }
2487 }
2488 },
2489 "leaf" : 1,
2490 "path" : "/config/ruledb/what/{ogroup}/filenamefilter/{id}",
2491 "text" : "{id}"
2492 }
2493 ],
2494 "info" : {
2495 "POST" : {
6bd70b95 2496 "allowtoken" : 1,
732d76e1
DM
2497 "description" : "Add 'Match Filename' object.",
2498 "method" : "POST",
2499 "name" : "filenamefilter",
2500 "parameters" : {
2501 "additionalProperties" : 0,
2502 "properties" : {
2503 "filename" : {
2504 "description" : "Filename filter",
2505 "maxLength" : 1024,
2506 "type" : "string",
2507 "typetext" : "<string>"
2508 },
2509 "ogroup" : {
2510 "description" : "Object Groups ID.",
2511 "type" : "integer",
2512 "typetext" : "<integer>"
2513 }
2514 }
2515 },
c061d61d
DM
2516 "permissions" : {
2517 "check" : [
2518 "admin"
2519 ]
2520 },
732d76e1
DM
2521 "protected" : 1,
2522 "proxyto" : "master",
2523 "returns" : {
2524 "description" : "The object ID.",
2525 "type" : "integer"
2526 }
2527 }
2528 },
2529 "leaf" : 0,
2530 "path" : "/config/ruledb/what/{ogroup}/filenamefilter",
2531 "text" : "filenamefilter"
410dc2c9 2532 },
9fda36b0
DM
2533 {
2534 "children" : [
2535 {
2536 "info" : {
2537 "GET" : {
6bd70b95 2538 "allowtoken" : 1,
732d76e1 2539 "description" : "Read 'Virus Filter' object settings.",
9fda36b0 2540 "method" : "GET",
732d76e1 2541 "name" : "read_virusfilter",
9fda36b0
DM
2542 "parameters" : {
2543 "additionalProperties" : 0,
2544 "properties" : {
2545 "id" : {
2546 "description" : "Object ID.",
2547 "type" : "integer",
2548 "typetext" : "<integer>"
2549 },
2550 "ogroup" : {
2551 "description" : "Object Groups ID.",
2552 "type" : "integer",
2553 "typetext" : "<integer>"
2554 }
2555 }
2556 },
c061d61d
DM
2557 "permissions" : {
2558 "check" : [
2559 "admin",
2560 "audit"
2561 ]
2562 },
9fda36b0
DM
2563 "proxyto" : "master",
2564 "returns" : {
2565 "properties" : {
2566 "id" : {
2567 "type" : "integer"
2568 }
2569 },
2570 "type" : "object"
2571 }
2572 },
2573 "PUT" : {
6bd70b95 2574 "allowtoken" : 1,
732d76e1 2575 "description" : "Update 'Virus Filter' object.",
9fda36b0 2576 "method" : "PUT",
732d76e1 2577 "name" : "update_virusfilter",
9fda36b0
DM
2578 "parameters" : {
2579 "additionalProperties" : 0,
2580 "properties" : {
9fda36b0
DM
2581 "id" : {
2582 "description" : "Object ID.",
2583 "type" : "integer",
2584 "typetext" : "<integer>"
2585 },
2586 "ogroup" : {
2587 "description" : "Object Groups ID.",
2588 "type" : "integer",
2589 "typetext" : "<integer>"
2590 }
2591 }
2592 },
c061d61d
DM
2593 "permissions" : {
2594 "check" : [
2595 "admin"
2596 ]
2597 },
9fda36b0
DM
2598 "protected" : 1,
2599 "proxyto" : "master",
2600 "returns" : {
2601 "type" : "null"
2602 }
2603 }
2604 },
2605 "leaf" : 1,
732d76e1 2606 "path" : "/config/ruledb/what/{ogroup}/virusfilter/{id}",
9fda36b0
DM
2607 "text" : "{id}"
2608 }
2609 ],
2610 "info" : {
2611 "POST" : {
6bd70b95 2612 "allowtoken" : 1,
732d76e1 2613 "description" : "Add 'Virus Filter' object.",
9fda36b0 2614 "method" : "POST",
732d76e1 2615 "name" : "virusfilter",
9fda36b0
DM
2616 "parameters" : {
2617 "additionalProperties" : 0,
2618 "properties" : {
9fda36b0
DM
2619 "ogroup" : {
2620 "description" : "Object Groups ID.",
2621 "type" : "integer",
2622 "typetext" : "<integer>"
2623 }
2624 }
2625 },
c061d61d
DM
2626 "permissions" : {
2627 "check" : [
2628 "admin"
2629 ]
2630 },
9fda36b0
DM
2631 "protected" : 1,
2632 "proxyto" : "master",
2633 "returns" : {
2634 "description" : "The object ID.",
2635 "type" : "integer"
2636 }
2637 }
2638 },
2639 "leaf" : 0,
732d76e1
DM
2640 "path" : "/config/ruledb/what/{ogroup}/virusfilter",
2641 "text" : "virusfilter"
9fda36b0
DM
2642 }
2643 ],
2644 "info" : {
2645 "DELETE" : {
6bd70b95 2646 "allowtoken" : 1,
9fda36b0
DM
2647 "description" : "Delete a 'what' group.",
2648 "method" : "DELETE",
2649 "name" : "delete_{$oclass}_group",
2650 "parameters" : {
2651 "additionalProperties" : 0,
2652 "properties" : {
2653 "ogroup" : {
2654 "description" : "Object Group ID.",
2655 "type" : "integer",
2656 "typetext" : "<integer>"
2657 }
2658 }
2659 },
732d76e1
DM
2660 "permissions" : {
2661 "check" : [
2662 "admin"
2663 ]
2664 },
9fda36b0
DM
2665 "protected" : 1,
2666 "proxyto" : "master",
2667 "returns" : {
2668 "type" : "null"
2669 }
2670 },
2671 "GET" : {
6bd70b95 2672 "allowtoken" : 1,
9fda36b0
DM
2673 "description" : "Directory index.",
2674 "method" : "GET",
2675 "name" : "index",
2676 "parameters" : {
2677 "additionalProperties" : 0,
2678 "properties" : {
2679 "ogroup" : {
2680 "description" : "Object Group ID.",
2681 "type" : "integer",
2682 "typetext" : "<integer>"
2683 }
2684 }
2685 },
732d76e1
DM
2686 "permissions" : {
2687 "check" : [
2688 "admin",
2689 "audit"
2690 ]
2691 },
9fda36b0
DM
2692 "returns" : {
2693 "items" : {
2694 "properties" : {
2695 "subdir" : {
2696 "type" : "string"
2697 }
2698 },
2699 "type" : "object"
2700 },
2701 "links" : [
2702 {
2703 "href" : "{subdir}",
2704 "rel" : "child"
2705 }
2706 ],
2707 "type" : "array"
2708 }
2709 }
2710 },
2711 "leaf" : 0,
2712 "path" : "/config/ruledb/what/{ogroup}",
2713 "text" : "{ogroup}"
2714 }
2715 ],
2716 "info" : {
2717 "GET" : {
6bd70b95 2718 "allowtoken" : 1,
9fda36b0
DM
2719 "description" : "Get list of 'what' groups.",
2720 "method" : "GET",
2721 "name" : "list_what_groups",
2722 "parameters" : {
2723 "additionalProperties" : 0
2724 },
732d76e1
DM
2725 "permissions" : {
2726 "check" : [
2727 "admin",
2728 "audit"
2729 ]
2730 },
9fda36b0
DM
2731 "proxyto" : "master",
2732 "returns" : {
2733 "items" : {
2734 "properties" : {
2735 "id" : {
2736 "type" : "integer"
2737 }
2738 },
2739 "type" : "object"
2740 },
2741 "type" : "array"
2742 }
2743 },
2744 "POST" : {
6bd70b95 2745 "allowtoken" : 1,
9fda36b0 2746 "description" : "Create a new 'what' group.",
eff914dc 2747 "method" : "POST",
9fda36b0 2748 "name" : "create_what_group",
eff914dc
DM
2749 "parameters" : {
2750 "additionalProperties" : 0,
2751 "properties" : {
2752 "info" : {
2753 "description" : "Informational comment.",
2754 "maxLength" : 255,
2755 "optional" : 1,
2756 "type" : "string",
2757 "typetext" : "<string>"
2758 },
2759 "name" : {
2760 "description" : "Group name.",
2761 "maxLength" : 255,
2762 "type" : "string",
2763 "typetext" : "<string>"
2764 }
2765 }
2766 },
732d76e1
DM
2767 "permissions" : {
2768 "check" : [
2769 "admin"
2770 ]
2771 },
eff914dc
DM
2772 "protected" : 1,
2773 "proxyto" : "master",
2774 "returns" : {
2775 "type" : "integer"
2776 }
410dc2c9
DM
2777 }
2778 },
f245a28c 2779 "leaf" : 0,
9fda36b0
DM
2780 "path" : "/config/ruledb/what",
2781 "text" : "what"
410dc2c9
DM
2782 },
2783 {
f245a28c
DM
2784 "children" : [
2785 {
2786 "children" : [
2787 {
eff914dc 2788 "info" : {
f245a28c 2789 "GET" : {
6bd70b95 2790 "allowtoken" : 1,
9fda36b0 2791 "description" : "Get 'when' group properties",
f245a28c
DM
2792 "method" : "GET",
2793 "name" : "get_config",
2794 "parameters" : {
2795 "additionalProperties" : 0,
2796 "properties" : {
2797 "ogroup" : {
2798 "description" : "Object Group ID.",
2799 "type" : "integer",
2800 "typetext" : "<integer>"
2801 }
2802 }
2803 },
732d76e1
DM
2804 "permissions" : {
2805 "check" : [
2806 "admin",
2807 "audit"
2808 ]
2809 },
f245a28c
DM
2810 "proxyto" : "master",
2811 "returns" : {
2812 "properties" : {
2813 "id" : {
2814 "type" : "integer"
2815 },
2816 "info" : {
2817 "type" : "string"
2818 },
2819 "name" : {
2820 "type" : "string"
2821 }
2822 },
2823 "type" : "object"
2824 }
2825 },
2826 "PUT" : {
6bd70b95 2827 "allowtoken" : 1,
9fda36b0 2828 "description" : "Modify 'when' group properties",
f245a28c
DM
2829 "method" : "PUT",
2830 "name" : "set_config",
2831 "parameters" : {
2832 "additionalProperties" : 0,
2833 "properties" : {
2834 "info" : {
2835 "description" : "Informational comment.",
2836 "maxLength" : 255,
2837 "optional" : 1,
2838 "type" : "string",
2839 "typetext" : "<string>"
2840 },
2841 "name" : {
2842 "description" : "Group name.",
2843 "maxLength" : 255,
2844 "optional" : 1,
2845 "type" : "string",
2846 "typetext" : "<string>"
2847 },
2848 "ogroup" : {
2849 "description" : "Object Group ID.",
2850 "type" : "integer",
2851 "typetext" : "<integer>"
2852 }
2853 }
2854 },
732d76e1
DM
2855 "permissions" : {
2856 "check" : [
2857 "admin"
2858 ]
2859 },
d7cd791b 2860 "protected" : 1,
f245a28c
DM
2861 "proxyto" : "master",
2862 "returns" : {
2863 "type" : "null"
2864 }
2865 }
eff914dc 2866 },
f245a28c 2867 "leaf" : 1,
9fda36b0 2868 "path" : "/config/ruledb/when/{ogroup}/config",
f245a28c
DM
2869 "text" : "config"
2870 },
eff914dc
DM
2871 {
2872 "children" : [
2873 {
2874 "info" : {
2875 "DELETE" : {
6bd70b95 2876 "allowtoken" : 1,
9fda36b0 2877 "description" : "Remove an object from the 'when' group.",
eff914dc
DM
2878 "method" : "DELETE",
2879 "name" : "delete_object",
2880 "parameters" : {
2881 "additionalProperties" : 0,
2882 "properties" : {
2883 "id" : {
2884 "description" : "Object ID.",
2885 "type" : "integer",
2886 "typetext" : "<integer>"
2887 },
2888 "ogroup" : {
2889 "description" : "Object Group ID.",
2890 "type" : "integer",
2891 "typetext" : "<integer>"
2892 }
2893 }
2894 },
732d76e1
DM
2895 "permissions" : {
2896 "check" : [
2897 "admin"
2898 ]
2899 },
a55e94a6 2900 "protected" : 1,
eff914dc
DM
2901 "proxyto" : "master",
2902 "returns" : {
2903 "type" : "null"
2904 }
2905 }
2906 },
2907 "leaf" : 1,
9fda36b0 2908 "path" : "/config/ruledb/when/{ogroup}/objects/{id}",
eff914dc
DM
2909 "text" : "{id}"
2910 }
2911 ],
2912 "info" : {
2913 "GET" : {
6bd70b95 2914 "allowtoken" : 1,
9fda36b0 2915 "description" : "List 'when' group objects.",
eff914dc
DM
2916 "method" : "GET",
2917 "name" : "objects",
2918 "parameters" : {
2919 "additionalProperties" : 0,
2920 "properties" : {
2921 "ogroup" : {
2922 "description" : "Object Group ID.",
2923 "type" : "integer",
2924 "typetext" : "<integer>"
2925 }
2926 }
2927 },
732d76e1
DM
2928 "permissions" : {
2929 "check" : [
2930 "admin",
2931 "audit"
2932 ]
2933 },
eff914dc
DM
2934 "proxyto" : "master",
2935 "returns" : {
2936 "items" : {
2937 "properties" : {
2938 "id" : {
2939 "type" : "integer"
2940 }
2941 },
2942 "type" : "object"
2943 },
2944 "links" : [
2945 {
2946 "href" : "{id}",
2947 "rel" : "child"
2948 }
2949 ],
2950 "type" : "array"
2951 }
2952 }
2953 },
2954 "leaf" : 0,
9fda36b0 2955 "path" : "/config/ruledb/when/{ogroup}/objects",
eff914dc
DM
2956 "text" : "objects"
2957 },
2958 {
2959 "children" : [
2960 {
2961 "info" : {
2962 "GET" : {
6bd70b95 2963 "allowtoken" : 1,
9fda36b0 2964 "description" : "Read 'TimeFrame' object settings.",
eff914dc 2965 "method" : "GET",
9fda36b0 2966 "name" : "read_timeframe",
eff914dc
DM
2967 "parameters" : {
2968 "additionalProperties" : 0,
2969 "properties" : {
2970 "id" : {
2971 "description" : "Object ID.",
2972 "type" : "integer",
2973 "typetext" : "<integer>"
2974 },
2975 "ogroup" : {
2976 "description" : "Object Groups ID.",
2977 "type" : "integer",
2978 "typetext" : "<integer>"
2979 }
2980 }
2981 },
c061d61d
DM
2982 "permissions" : {
2983 "check" : [
2984 "admin",
2985 "audit"
2986 ]
2987 },
eff914dc
DM
2988 "proxyto" : "master",
2989 "returns" : {
2990 "properties" : {
2991 "id" : {
2992 "type" : "integer"
2993 }
2994 },
2995 "type" : "object"
2996 }
2997 },
2998 "PUT" : {
6bd70b95 2999 "allowtoken" : 1,
9fda36b0 3000 "description" : "Update 'TimeFrame' object.",
eff914dc 3001 "method" : "PUT",
9fda36b0 3002 "name" : "update_timeframe",
eff914dc
DM
3003 "parameters" : {
3004 "additionalProperties" : 0,
3005 "properties" : {
9fda36b0
DM
3006 "end" : {
3007 "description" : "End time in `H:i` format (00:00).",
3008 "pattern" : "\\d?\\d:\\d?\\d",
3009 "type" : "string"
eff914dc
DM
3010 },
3011 "id" : {
3012 "description" : "Object ID.",
3013 "type" : "integer",
3014 "typetext" : "<integer>"
3015 },
3016 "ogroup" : {
3017 "description" : "Object Groups ID.",
3018 "type" : "integer",
3019 "typetext" : "<integer>"
9fda36b0
DM
3020 },
3021 "start" : {
3022 "description" : "Start time in `H:i` format (00:00).",
3023 "pattern" : "\\d?\\d:\\d?\\d",
3024 "type" : "string"
eff914dc
DM
3025 }
3026 }
3027 },
c061d61d
DM
3028 "permissions" : {
3029 "check" : [
3030 "admin"
3031 ]
3032 },
a55e94a6 3033 "protected" : 1,
eff914dc
DM
3034 "proxyto" : "master",
3035 "returns" : {
3036 "type" : "null"
3037 }
3038 }
3039 },
3040 "leaf" : 1,
9fda36b0 3041 "path" : "/config/ruledb/when/{ogroup}/timeframe/{id}",
eff914dc
DM
3042 "text" : "{id}"
3043 }
3044 ],
3045 "info" : {
3046 "POST" : {
6bd70b95 3047 "allowtoken" : 1,
9fda36b0 3048 "description" : "Add 'TimeFrame' object.",
eff914dc 3049 "method" : "POST",
9fda36b0 3050 "name" : "timeframe",
eff914dc
DM
3051 "parameters" : {
3052 "additionalProperties" : 0,
3053 "properties" : {
9fda36b0
DM
3054 "end" : {
3055 "description" : "End time in `H:i` format (00:00).",
3056 "pattern" : "\\d?\\d:\\d?\\d",
3057 "type" : "string"
eff914dc
DM
3058 },
3059 "ogroup" : {
3060 "description" : "Object Groups ID.",
3061 "type" : "integer",
3062 "typetext" : "<integer>"
9fda36b0
DM
3063 },
3064 "start" : {
3065 "description" : "Start time in `H:i` format (00:00).",
3066 "pattern" : "\\d?\\d:\\d?\\d",
3067 "type" : "string"
eff914dc
DM
3068 }
3069 }
3070 },
c061d61d
DM
3071 "permissions" : {
3072 "check" : [
3073 "admin"
3074 ]
3075 },
a55e94a6 3076 "protected" : 1,
eff914dc
DM
3077 "proxyto" : "master",
3078 "returns" : {
3079 "description" : "The object ID.",
3080 "type" : "integer"
3081 }
3082 }
3083 },
3084 "leaf" : 0,
9fda36b0
DM
3085 "path" : "/config/ruledb/when/{ogroup}/timeframe",
3086 "text" : "timeframe"
3087 }
3088 ],
3089 "info" : {
3090 "DELETE" : {
6bd70b95 3091 "allowtoken" : 1,
9fda36b0
DM
3092 "description" : "Delete a 'when' group.",
3093 "method" : "DELETE",
3094 "name" : "delete_{$oclass}_group",
3095 "parameters" : {
3096 "additionalProperties" : 0,
3097 "properties" : {
3098 "ogroup" : {
3099 "description" : "Object Group ID.",
3100 "type" : "integer",
3101 "typetext" : "<integer>"
3102 }
3103 }
3104 },
732d76e1
DM
3105 "permissions" : {
3106 "check" : [
3107 "admin"
3108 ]
3109 },
9fda36b0
DM
3110 "protected" : 1,
3111 "proxyto" : "master",
3112 "returns" : {
3113 "type" : "null"
3114 }
3115 },
3116 "GET" : {
6bd70b95 3117 "allowtoken" : 1,
9fda36b0
DM
3118 "description" : "Directory index.",
3119 "method" : "GET",
3120 "name" : "index",
3121 "parameters" : {
3122 "additionalProperties" : 0,
3123 "properties" : {
3124 "ogroup" : {
3125 "description" : "Object Group ID.",
3126 "type" : "integer",
3127 "typetext" : "<integer>"
3128 }
3129 }
3130 },
732d76e1
DM
3131 "permissions" : {
3132 "check" : [
3133 "admin",
3134 "audit"
3135 ]
3136 },
9fda36b0
DM
3137 "returns" : {
3138 "items" : {
3139 "properties" : {
3140 "subdir" : {
3141 "type" : "string"
eff914dc
DM
3142 }
3143 },
9fda36b0
DM
3144 "type" : "object"
3145 },
3146 "links" : [
3147 {
3148 "href" : "{subdir}",
3149 "rel" : "child"
3150 }
3151 ],
3152 "type" : "array"
3153 }
3154 }
3155 },
3156 "leaf" : 0,
3157 "path" : "/config/ruledb/when/{ogroup}",
3158 "text" : "{ogroup}"
3159 }
3160 ],
3161 "info" : {
3162 "GET" : {
6bd70b95 3163 "allowtoken" : 1,
9fda36b0
DM
3164 "description" : "Get list of 'when' groups.",
3165 "method" : "GET",
3166 "name" : "list_when_groups",
3167 "parameters" : {
3168 "additionalProperties" : 0
3169 },
732d76e1
DM
3170 "permissions" : {
3171 "check" : [
3172 "admin",
3173 "audit"
3174 ]
3175 },
9fda36b0
DM
3176 "proxyto" : "master",
3177 "returns" : {
3178 "items" : {
3179 "properties" : {
3180 "id" : {
3181 "type" : "integer"
eff914dc 3182 }
9fda36b0
DM
3183 },
3184 "type" : "object"
3185 },
3186 "type" : "array"
3187 }
3188 },
3189 "POST" : {
6bd70b95 3190 "allowtoken" : 1,
9fda36b0
DM
3191 "description" : "Create a new 'when' group.",
3192 "method" : "POST",
3193 "name" : "create_when_group",
3194 "parameters" : {
3195 "additionalProperties" : 0,
3196 "properties" : {
eff914dc 3197 "info" : {
9fda36b0
DM
3198 "description" : "Informational comment.",
3199 "maxLength" : 255,
3200 "optional" : 1,
3201 "type" : "string",
3202 "typetext" : "<string>"
3203 },
3204 "name" : {
3205 "description" : "Group name.",
3206 "maxLength" : 255,
3207 "type" : "string",
3208 "typetext" : "<string>"
3209 }
3210 }
3211 },
732d76e1
DM
3212 "permissions" : {
3213 "check" : [
3214 "admin"
3215 ]
3216 },
9fda36b0
DM
3217 "protected" : 1,
3218 "proxyto" : "master",
3219 "returns" : {
3220 "type" : "integer"
3221 }
3222 }
3223 },
3224 "leaf" : 0,
3225 "path" : "/config/ruledb/when",
3226 "text" : "when"
3227 },
3228 {
3229 "children" : [
3230 {
3231 "children" : [
3232 {
3233 "info" : {
3234 "GET" : {
6bd70b95 3235 "allowtoken" : 1,
9fda36b0
DM
3236 "description" : "Get 'who' group properties",
3237 "method" : "GET",
3238 "name" : "get_config",
eff914dc
DM
3239 "parameters" : {
3240 "additionalProperties" : 0,
3241 "properties" : {
9fda36b0
DM
3242 "ogroup" : {
3243 "description" : "Object Group ID.",
3244 "type" : "integer",
3245 "typetext" : "<integer>"
3246 }
3247 }
3248 },
732d76e1
DM
3249 "permissions" : {
3250 "check" : [
3251 "admin",
3252 "audit"
3253 ]
3254 },
9fda36b0
DM
3255 "proxyto" : "master",
3256 "returns" : {
3257 "properties" : {
3258 "id" : {
3259 "type" : "integer"
3260 },
3261 "info" : {
3262 "type" : "string"
3263 },
3264 "name" : {
3265 "type" : "string"
3266 }
3267 },
3268 "type" : "object"
3269 }
3270 },
3271 "PUT" : {
6bd70b95 3272 "allowtoken" : 1,
9fda36b0
DM
3273 "description" : "Modify 'who' group properties",
3274 "method" : "PUT",
3275 "name" : "set_config",
3276 "parameters" : {
3277 "additionalProperties" : 0,
3278 "properties" : {
3279 "info" : {
3280 "description" : "Informational comment.",
3281 "maxLength" : 255,
3282 "optional" : 1,
3283 "type" : "string",
3284 "typetext" : "<string>"
3285 },
3286 "name" : {
3287 "description" : "Group name.",
3288 "maxLength" : 255,
3289 "optional" : 1,
eff914dc
DM
3290 "type" : "string",
3291 "typetext" : "<string>"
3292 },
3293 "ogroup" : {
9fda36b0 3294 "description" : "Object Group ID.",
eff914dc
DM
3295 "type" : "integer",
3296 "typetext" : "<integer>"
3297 }
3298 }
3299 },
732d76e1
DM
3300 "permissions" : {
3301 "check" : [
3302 "admin"
3303 ]
3304 },
a55e94a6 3305 "protected" : 1,
eff914dc
DM
3306 "proxyto" : "master",
3307 "returns" : {
9fda36b0 3308 "type" : "null"
eff914dc
DM
3309 }
3310 }
3311 },
9fda36b0
DM
3312 "leaf" : 1,
3313 "path" : "/config/ruledb/who/{ogroup}/config",
3314 "text" : "config"
eff914dc
DM
3315 },
3316 {
3317 "children" : [
3318 {
3319 "info" : {
9fda36b0 3320 "DELETE" : {
6bd70b95 3321 "allowtoken" : 1,
9fda36b0
DM
3322 "description" : "Remove an object from the 'who' group.",
3323 "method" : "DELETE",
3324 "name" : "delete_object",
eff914dc
DM
3325 "parameters" : {
3326 "additionalProperties" : 0,
3327 "properties" : {
3328 "id" : {
3329 "description" : "Object ID.",
3330 "type" : "integer",
3331 "typetext" : "<integer>"
3332 },
3333 "ogroup" : {
9fda36b0 3334 "description" : "Object Group ID.",
eff914dc
DM
3335 "type" : "integer",
3336 "typetext" : "<integer>"
3337 }
3338 }
3339 },
732d76e1
DM
3340 "permissions" : {
3341 "check" : [
3342 "admin"
3343 ]
3344 },
9fda36b0 3345 "protected" : 1,
eff914dc
DM
3346 "proxyto" : "master",
3347 "returns" : {
9fda36b0 3348 "type" : "null"
eff914dc
DM
3349 }
3350 }
3351 },
3352 "leaf" : 1,
9fda36b0 3353 "path" : "/config/ruledb/who/{ogroup}/objects/{id}",
eff914dc
DM
3354 "text" : "{id}"
3355 }
3356 ],
3357 "info" : {
9fda36b0 3358 "GET" : {
6bd70b95 3359 "allowtoken" : 1,
9fda36b0
DM
3360 "description" : "List 'who' group objects.",
3361 "method" : "GET",
3362 "name" : "objects",
eff914dc
DM
3363 "parameters" : {
3364 "additionalProperties" : 0,
3365 "properties" : {
3366 "ogroup" : {
9fda36b0 3367 "description" : "Object Group ID.",
eff914dc
DM
3368 "type" : "integer",
3369 "typetext" : "<integer>"
eff914dc
DM
3370 }
3371 }
3372 },
732d76e1
DM
3373 "permissions" : {
3374 "check" : [
3375 "admin",
3376 "audit"
3377 ]
3378 },
eff914dc
DM
3379 "proxyto" : "master",
3380 "returns" : {
9fda36b0
DM
3381 "items" : {
3382 "properties" : {
3383 "id" : {
3384 "type" : "integer"
3385 }
3386 },
3387 "type" : "object"
3388 },
3389 "links" : [
3390 {
3391 "href" : "{id}",
3392 "rel" : "child"
3393 }
3394 ],
3395 "type" : "array"
eff914dc
DM
3396 }
3397 }
3398 },
3399 "leaf" : 0,
9fda36b0
DM
3400 "path" : "/config/ruledb/who/{ogroup}/objects",
3401 "text" : "objects"
eff914dc
DM
3402 },
3403 {
3404 "children" : [
3405 {
3406 "info" : {
3407 "GET" : {
6bd70b95 3408 "allowtoken" : 1,
9fda36b0 3409 "description" : "Read 'Mail address' object settings.",
eff914dc 3410 "method" : "GET",
9fda36b0 3411 "name" : "read_email",
eff914dc
DM
3412 "parameters" : {
3413 "additionalProperties" : 0,
3414 "properties" : {
3415 "id" : {
3416 "description" : "Object ID.",
3417 "type" : "integer",
3418 "typetext" : "<integer>"
3419 },
3420 "ogroup" : {
3421 "description" : "Object Groups ID.",
3422 "type" : "integer",
3423 "typetext" : "<integer>"
3424 }
3425 }
3426 },
c061d61d
DM
3427 "permissions" : {
3428 "check" : [
3429 "admin",
3430 "audit"
3431 ]
3432 },
eff914dc
DM
3433 "proxyto" : "master",
3434 "returns" : {
3435 "properties" : {
3436 "id" : {
3437 "type" : "integer"
3438 }
3439 },
3440 "type" : "object"
3441 }
3442 },
3443 "PUT" : {
6bd70b95 3444 "allowtoken" : 1,
9fda36b0 3445 "description" : "Update 'Mail address' object.",
eff914dc 3446 "method" : "PUT",
9fda36b0 3447 "name" : "update_email",
eff914dc
DM
3448 "parameters" : {
3449 "additionalProperties" : 0,
3450 "properties" : {
9fda36b0
DM
3451 "email" : {
3452 "description" : "Email address.",
3453 "format" : "email",
3454 "type" : "string",
3455 "typetext" : "<string>"
3456 },
eff914dc
DM
3457 "id" : {
3458 "description" : "Object ID.",
3459 "type" : "integer",
3460 "typetext" : "<integer>"
3461 },
eff914dc
DM
3462 "ogroup" : {
3463 "description" : "Object Groups ID.",
3464 "type" : "integer",
3465 "typetext" : "<integer>"
3466 }
3467 }
3468 },
c061d61d
DM
3469 "permissions" : {
3470 "check" : [
3471 "admin"
3472 ]
3473 },
a55e94a6 3474 "protected" : 1,
eff914dc
DM
3475 "proxyto" : "master",
3476 "returns" : {
3477 "type" : "null"
3478 }
3479 }
3480 },
3481 "leaf" : 1,
9fda36b0 3482 "path" : "/config/ruledb/who/{ogroup}/email/{id}",
eff914dc
DM
3483 "text" : "{id}"
3484 }
3485 ],
3486 "info" : {
3487 "POST" : {
6bd70b95 3488 "allowtoken" : 1,
9fda36b0 3489 "description" : "Add 'Mail address' object.",
eff914dc 3490 "method" : "POST",
9fda36b0 3491 "name" : "email",
eff914dc
DM
3492 "parameters" : {
3493 "additionalProperties" : 0,
3494 "properties" : {
9fda36b0
DM
3495 "email" : {
3496 "description" : "Email address.",
3497 "format" : "email",
eff914dc
DM
3498 "type" : "string",
3499 "typetext" : "<string>"
3500 },
3501 "ogroup" : {
3502 "description" : "Object Groups ID.",
3503 "type" : "integer",
3504 "typetext" : "<integer>"
3505 }
3506 }
3507 },
c061d61d
DM
3508 "permissions" : {
3509 "check" : [
3510 "admin"
3511 ]
3512 },
a55e94a6 3513 "protected" : 1,
eff914dc
DM
3514 "proxyto" : "master",
3515 "returns" : {
3516 "description" : "The object ID.",
3517 "type" : "integer"
3518 }
3519 }
3520 },
3521 "leaf" : 0,
9fda36b0
DM
3522 "path" : "/config/ruledb/who/{ogroup}/email",
3523 "text" : "email"
eff914dc
DM
3524 },
3525 {
3526 "children" : [
3527 {
3528 "info" : {
3529 "GET" : {
6bd70b95 3530 "allowtoken" : 1,
9fda36b0 3531 "description" : "Read 'Domain' object settings.",
eff914dc 3532 "method" : "GET",
9fda36b0 3533 "name" : "read_domain",
eff914dc
DM
3534 "parameters" : {
3535 "additionalProperties" : 0,
3536 "properties" : {
3537 "id" : {
3538 "description" : "Object ID.",
3539 "type" : "integer",
3540 "typetext" : "<integer>"
3541 },
3542 "ogroup" : {
3543 "description" : "Object Groups ID.",
3544 "type" : "integer",
3545 "typetext" : "<integer>"
3546 }
3547 }
3548 },
c061d61d
DM
3549 "permissions" : {
3550 "check" : [
3551 "admin",
3552 "audit"
3553 ]
3554 },
eff914dc
DM
3555 "proxyto" : "master",
3556 "returns" : {
3557 "properties" : {
3558 "id" : {
3559 "type" : "integer"
3560 }
3561 },
3562 "type" : "object"
3563 }
3564 },
3565 "PUT" : {
6bd70b95 3566 "allowtoken" : 1,
9fda36b0 3567 "description" : "Update 'Domain' object.",
eff914dc 3568 "method" : "PUT",
9fda36b0 3569 "name" : "update_domain",
eff914dc
DM
3570 "parameters" : {
3571 "additionalProperties" : 0,
3572 "properties" : {
9fda36b0
DM
3573 "domain" : {
3574 "description" : "DNS domain name (Sender).",
3575 "format" : "dns-name",
eff914dc
DM
3576 "type" : "string",
3577 "typetext" : "<string>"
3578 },
3579 "id" : {
3580 "description" : "Object ID.",
3581 "type" : "integer",
3582 "typetext" : "<integer>"
3583 },
3584 "ogroup" : {
3585 "description" : "Object Groups ID.",
3586 "type" : "integer",
3587 "typetext" : "<integer>"
3588 }
3589 }
3590 },
c061d61d
DM
3591 "permissions" : {
3592 "check" : [
3593 "admin"
3594 ]
3595 },
a55e94a6 3596 "protected" : 1,
eff914dc
DM
3597 "proxyto" : "master",
3598 "returns" : {
3599 "type" : "null"
3600 }
3601 }
3602 },
3603 "leaf" : 1,
9fda36b0 3604 "path" : "/config/ruledb/who/{ogroup}/domain/{id}",
eff914dc
DM
3605 "text" : "{id}"
3606 }
3607 ],
3608 "info" : {
3609 "POST" : {
6bd70b95 3610 "allowtoken" : 1,
9fda36b0 3611 "description" : "Add 'Domain' object.",
eff914dc 3612 "method" : "POST",
9fda36b0 3613 "name" : "domain",
eff914dc
DM
3614 "parameters" : {
3615 "additionalProperties" : 0,
3616 "properties" : {
9fda36b0
DM
3617 "domain" : {
3618 "description" : "DNS domain name (Sender).",
3619 "format" : "dns-name",
eff914dc
DM
3620 "type" : "string",
3621 "typetext" : "<string>"
3622 },
3623 "ogroup" : {
3624 "description" : "Object Groups ID.",
3625 "type" : "integer",
3626 "typetext" : "<integer>"
3627 }
3628 }
3629 },
c061d61d
DM
3630 "permissions" : {
3631 "check" : [
3632 "admin"
3633 ]
3634 },
a55e94a6 3635 "protected" : 1,
eff914dc
DM
3636 "proxyto" : "master",
3637 "returns" : {
3638 "description" : "The object ID.",
3639 "type" : "integer"
3640 }
3641 }
3642 },
3643 "leaf" : 0,
9fda36b0
DM
3644 "path" : "/config/ruledb/who/{ogroup}/domain",
3645 "text" : "domain"
a55e94a6
DM
3646 },
3647 {
3648 "children" : [
3649 {
3650 "info" : {
3651 "GET" : {
6bd70b95 3652 "allowtoken" : 1,
9fda36b0 3653 "description" : "Read 'Regular Expression' object settings.",
a55e94a6 3654 "method" : "GET",
9fda36b0 3655 "name" : "read_regex",
a55e94a6
DM
3656 "parameters" : {
3657 "additionalProperties" : 0,
3658 "properties" : {
3659 "id" : {
3660 "description" : "Object ID.",
3661 "type" : "integer",
3662 "typetext" : "<integer>"
3663 },
3664 "ogroup" : {
3665 "description" : "Object Groups ID.",
3666 "type" : "integer",
3667 "typetext" : "<integer>"
3668 }
3669 }
3670 },
c061d61d
DM
3671 "permissions" : {
3672 "check" : [
3673 "admin",
3674 "audit"
3675 ]
3676 },
a55e94a6
DM
3677 "proxyto" : "master",
3678 "returns" : {
3679 "properties" : {
3680 "id" : {
3681 "type" : "integer"
3682 }
3683 },
3684 "type" : "object"
3685 }
3686 },
3687 "PUT" : {
6bd70b95 3688 "allowtoken" : 1,
9fda36b0 3689 "description" : "Update 'Regular Expression' object.",
a55e94a6 3690 "method" : "PUT",
9fda36b0 3691 "name" : "update_regex",
a55e94a6
DM
3692 "parameters" : {
3693 "additionalProperties" : 0,
3694 "properties" : {
a55e94a6
DM
3695 "id" : {
3696 "description" : "Object ID.",
3697 "type" : "integer",
3698 "typetext" : "<integer>"
3699 },
a55e94a6
DM
3700 "ogroup" : {
3701 "description" : "Object Groups ID.",
3702 "type" : "integer",
3703 "typetext" : "<integer>"
3704 },
9fda36b0
DM
3705 "regex" : {
3706 "description" : "Email address regular expression.",
3707 "maxLength" : 1024,
a55e94a6
DM
3708 "type" : "string",
3709 "typetext" : "<string>"
3710 }
3711 }
3712 },
c061d61d
DM
3713 "permissions" : {
3714 "check" : [
3715 "admin"
3716 ]
3717 },
a55e94a6
DM
3718 "protected" : 1,
3719 "proxyto" : "master",
3720 "returns" : {
3721 "type" : "null"
3722 }
3723 }
3724 },
3725 "leaf" : 1,
9fda36b0 3726 "path" : "/config/ruledb/who/{ogroup}/regex/{id}",
a55e94a6
DM
3727 "text" : "{id}"
3728 }
3729 ],
3730 "info" : {
3731 "POST" : {
6bd70b95 3732 "allowtoken" : 1,
9fda36b0 3733 "description" : "Add 'Regular Expression' object.",
a55e94a6 3734 "method" : "POST",
9fda36b0 3735 "name" : "regex",
a55e94a6
DM
3736 "parameters" : {
3737 "additionalProperties" : 0,
3738 "properties" : {
a55e94a6
DM
3739 "ogroup" : {
3740 "description" : "Object Groups ID.",
3741 "type" : "integer",
3742 "typetext" : "<integer>"
3743 },
9fda36b0
DM
3744 "regex" : {
3745 "description" : "Email address regular expression.",
3746 "maxLength" : 1024,
a55e94a6
DM
3747 "type" : "string",
3748 "typetext" : "<string>"
3749 }
3750 }
3751 },
c061d61d
DM
3752 "permissions" : {
3753 "check" : [
3754 "admin"
3755 ]
3756 },
a55e94a6
DM
3757 "protected" : 1,
3758 "proxyto" : "master",
3759 "returns" : {
3760 "description" : "The object ID.",
3761 "type" : "integer"
3762 }
3763 }
3764 },
3765 "leaf" : 0,
9fda36b0
DM
3766 "path" : "/config/ruledb/who/{ogroup}/regex",
3767 "text" : "regex"
a55e94a6
DM
3768 },
3769 {
3770 "children" : [
3771 {
3772 "info" : {
3773 "GET" : {
6bd70b95 3774 "allowtoken" : 1,
9fda36b0 3775 "description" : "Read 'IP Address' object settings.",
a55e94a6 3776 "method" : "GET",
9fda36b0 3777 "name" : "read_ip",
a55e94a6
DM
3778 "parameters" : {
3779 "additionalProperties" : 0,
3780 "properties" : {
3781 "id" : {
3782 "description" : "Object ID.",
3783 "type" : "integer",
3784 "typetext" : "<integer>"
3785 },
3786 "ogroup" : {
3787 "description" : "Object Groups ID.",
3788 "type" : "integer",
3789 "typetext" : "<integer>"
3790 }
3791 }
3792 },
c061d61d
DM
3793 "permissions" : {
3794 "check" : [
3795 "admin",
3796 "audit"
3797 ]
3798 },
a55e94a6
DM
3799 "proxyto" : "master",
3800 "returns" : {
3801 "properties" : {
3802 "id" : {
3803 "type" : "integer"
3804 }
3805 },
3806 "type" : "object"
3807 }
3808 },
3809 "PUT" : {
6bd70b95 3810 "allowtoken" : 1,
9fda36b0 3811 "description" : "Update 'IP Address' object.",
a55e94a6 3812 "method" : "PUT",
9fda36b0 3813 "name" : "update_ip",
a55e94a6
DM
3814 "parameters" : {
3815 "additionalProperties" : 0,
3816 "properties" : {
a55e94a6
DM
3817 "id" : {
3818 "description" : "Object ID.",
3819 "type" : "integer",
3820 "typetext" : "<integer>"
3821 },
9fda36b0
DM
3822 "ip" : {
3823 "description" : "IP address",
3824 "format" : "ip",
3825 "type" : "string",
3826 "typetext" : "<string>"
3827 },
a55e94a6
DM
3828 "ogroup" : {
3829 "description" : "Object Groups ID.",
3830 "type" : "integer",
3831 "typetext" : "<integer>"
a55e94a6
DM
3832 }
3833 }
3834 },
c061d61d
DM
3835 "permissions" : {
3836 "check" : [
3837 "admin"
3838 ]
3839 },
a55e94a6
DM
3840 "protected" : 1,
3841 "proxyto" : "master",
3842 "returns" : {
3843 "type" : "null"
3844 }
3845 }
3846 },
3847 "leaf" : 1,
9fda36b0 3848 "path" : "/config/ruledb/who/{ogroup}/ip/{id}",
a55e94a6
DM
3849 "text" : "{id}"
3850 }
3851 ],
3852 "info" : {
3853 "POST" : {
6bd70b95 3854 "allowtoken" : 1,
9fda36b0 3855 "description" : "Add 'IP Address' object.",
a55e94a6 3856 "method" : "POST",
9fda36b0 3857 "name" : "ip",
a55e94a6
DM
3858 "parameters" : {
3859 "additionalProperties" : 0,
3860 "properties" : {
9fda36b0
DM
3861 "ip" : {
3862 "description" : "IP address",
3863 "format" : "ip",
a55e94a6
DM
3864 "type" : "string",
3865 "typetext" : "<string>"
3866 },
3867 "ogroup" : {
3868 "description" : "Object Groups ID.",
3869 "type" : "integer",
3870 "typetext" : "<integer>"
a55e94a6
DM
3871 }
3872 }
3873 },
c061d61d
DM
3874 "permissions" : {
3875 "check" : [
3876 "admin"
3877 ]
3878 },
a55e94a6
DM
3879 "protected" : 1,
3880 "proxyto" : "master",
3881 "returns" : {
3882 "description" : "The object ID.",
3883 "type" : "integer"
3884 }
3885 }
3886 },
3887 "leaf" : 0,
9fda36b0
DM
3888 "path" : "/config/ruledb/who/{ogroup}/ip",
3889 "text" : "ip"
eff914dc 3890 },
9fda36b0
DM
3891 {
3892 "children" : [
3893 {
3894 "info" : {
3895 "GET" : {
6bd70b95 3896 "allowtoken" : 1,
9fda36b0
DM
3897 "description" : "Read 'IP Network' object settings.",
3898 "method" : "GET",
3899 "name" : "read_network",
3900 "parameters" : {
3901 "additionalProperties" : 0,
3902 "properties" : {
3903 "id" : {
3904 "description" : "Object ID.",
3905 "type" : "integer",
3906 "typetext" : "<integer>"
3907 },
3908 "ogroup" : {
3909 "description" : "Object Groups ID.",
3910 "type" : "integer",
3911 "typetext" : "<integer>"
3912 }
3913 }
3914 },
c061d61d
DM
3915 "permissions" : {
3916 "check" : [
3917 "admin",
3918 "audit"
3919 ]
3920 },
9fda36b0
DM
3921 "proxyto" : "master",
3922 "returns" : {
3923 "properties" : {
3924 "id" : {
3925 "type" : "integer"
3926 }
3927 },
3928 "type" : "object"
3929 }
3930 },
3931 "PUT" : {
6bd70b95 3932 "allowtoken" : 1,
9fda36b0
DM
3933 "description" : "Update 'IP Network' object.",
3934 "method" : "PUT",
3935 "name" : "update_network",
3936 "parameters" : {
3937 "additionalProperties" : 0,
3938 "properties" : {
3939 "cidr" : {
3940 "description" : "Network address in CIDR notation.",
3941 "format" : "CIDR",
3942 "type" : "string",
3943 "typetext" : "<string>"
3944 },
3945 "id" : {
3946 "description" : "Object ID.",
3947 "type" : "integer",
3948 "typetext" : "<integer>"
3949 },
3950 "ogroup" : {
3951 "description" : "Object Groups ID.",
3952 "type" : "integer",
3953 "typetext" : "<integer>"
3954 }
3955 }
3956 },
c061d61d
DM
3957 "permissions" : {
3958 "check" : [
3959 "admin"
3960 ]
3961 },
9fda36b0
DM
3962 "protected" : 1,
3963 "proxyto" : "master",
3964 "returns" : {
3965 "type" : "null"
3966 }
3967 }
3968 },
3969 "leaf" : 1,
3970 "path" : "/config/ruledb/who/{ogroup}/network/{id}",
3971 "text" : "{id}"
eff914dc 3972 }
9fda36b0
DM
3973 ],
3974 "info" : {
3975 "POST" : {
6bd70b95 3976 "allowtoken" : 1,
9fda36b0
DM
3977 "description" : "Add 'IP Network' object.",
3978 "method" : "POST",
3979 "name" : "network",
3980 "parameters" : {
3981 "additionalProperties" : 0,
3982 "properties" : {
3983 "cidr" : {
3984 "description" : "Network address in CIDR notation.",
3985 "format" : "CIDR",
3986 "type" : "string",
3987 "typetext" : "<string>"
3988 },
3989 "ogroup" : {
3990 "description" : "Object Groups ID.",
3991 "type" : "integer",
3992 "typetext" : "<integer>"
3993 }
eff914dc
DM
3994 }
3995 },
c061d61d
DM
3996 "permissions" : {
3997 "check" : [
3998 "admin"
3999 ]
4000 },
9fda36b0
DM
4001 "protected" : 1,
4002 "proxyto" : "master",
4003 "returns" : {
4004 "description" : "The object ID.",
4005 "type" : "integer"
eff914dc 4006 }
eff914dc
DM
4007 }
4008 },
9fda36b0
DM
4009 "leaf" : 0,
4010 "path" : "/config/ruledb/who/{ogroup}/network",
4011 "text" : "network"
410dc2c9 4012 },
9fda36b0
DM
4013 {
4014 "children" : [
4015 {
4016 "info" : {
4017 "GET" : {
6bd70b95 4018 "allowtoken" : 1,
9fda36b0
DM
4019 "description" : "Read 'LDAP Group' object settings.",
4020 "method" : "GET",
4021 "name" : "read_ldap",
4022 "parameters" : {
4023 "additionalProperties" : 0,
4024 "properties" : {
4025 "id" : {
4026 "description" : "Object ID.",
4027 "type" : "integer",
4028 "typetext" : "<integer>"
4029 },
4030 "ogroup" : {
4031 "description" : "Object Groups ID.",
4032 "type" : "integer",
4033 "typetext" : "<integer>"
4034 }
4035 }
4036 },
c061d61d
DM
4037 "permissions" : {
4038 "check" : [
4039 "admin",
4040 "audit"
4041 ]
4042 },
9fda36b0
DM
4043 "proxyto" : "master",
4044 "returns" : {
4045 "properties" : {
4046 "id" : {
4047 "type" : "integer"
4048 }
4049 },
4050 "type" : "object"
4051 }
4052 },
4053 "PUT" : {
6bd70b95 4054 "allowtoken" : 1,
9fda36b0
DM
4055 "description" : "Update 'LDAP Group' object.",
4056 "method" : "PUT",
4057 "name" : "update_ldap",
4058 "parameters" : {
4059 "additionalProperties" : 0,
4060 "properties" : {
4061 "group" : {
4062 "description" : "LDAP Group DN",
4063 "maxLength" : 1024,
4064 "minLength" : 1,
4065 "optional" : 1,
4066 "type" : "string",
4067 "typetext" : "<string>"
4068 },
4069 "id" : {
4070 "description" : "Object ID.",
4071 "type" : "integer",
4072 "typetext" : "<integer>"
4073 },
4074 "mode" : {
4075 "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.",
4076 "enum" : [
4077 "any",
4078 "none",
4079 "group"
4080 ],
4081 "type" : "string"
4082 },
4083 "ogroup" : {
4084 "description" : "Object Groups ID.",
4085 "type" : "integer",
4086 "typetext" : "<integer>"
4087 },
4088 "profile" : {
4089 "description" : "Profile ID.",
4090 "format" : "pve-configid",
4091 "optional" : 1,
4092 "type" : "string",
4093 "typetext" : "<string>"
4094 }
4095 }
4096 },
c061d61d
DM
4097 "permissions" : {
4098 "check" : [
4099 "admin"
4100 ]
4101 },
9fda36b0
DM
4102 "protected" : 1,
4103 "proxyto" : "master",
4104 "returns" : {
4105 "type" : "null"
4106 }
4107 }
4108 },
4109 "leaf" : 1,
4110 "path" : "/config/ruledb/who/{ogroup}/ldap/{id}",
4111 "text" : "{id}"
4112 }
4113 ],
4114 "info" : {
4115 "POST" : {
6bd70b95 4116 "allowtoken" : 1,
9fda36b0
DM
4117 "description" : "Add 'LDAP Group' object.",
4118 "method" : "POST",
4119 "name" : "ldap",
4120 "parameters" : {
4121 "additionalProperties" : 0,
4122 "properties" : {
4123 "group" : {
4124 "description" : "LDAP Group DN",
4125 "maxLength" : 1024,
4126 "minLength" : 1,
4127 "optional" : 1,
4128 "type" : "string",
4129 "typetext" : "<string>"
4130 },
4131 "mode" : {
4132 "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.",
4133 "enum" : [
4134 "any",
4135 "none",
4136 "group"
4137 ],
4138 "type" : "string"
4139 },
4140 "ogroup" : {
4141 "description" : "Object Groups ID.",
4142 "type" : "integer",
4143 "typetext" : "<integer>"
4144 },
4145 "profile" : {
4146 "description" : "Profile ID.",
4147 "format" : "pve-configid",
4148 "optional" : 1,
4149 "type" : "string",
4150 "typetext" : "<string>"
4151 }
4152 }
4153 },
c061d61d
DM
4154 "permissions" : {
4155 "check" : [
4156 "admin"
4157 ]
4158 },
9fda36b0
DM
4159 "protected" : 1,
4160 "proxyto" : "master",
4161 "returns" : {
4162 "description" : "The object ID.",
4163 "type" : "integer"
4164 }
4165 }
4166 },
4167 "leaf" : 0,
4168 "path" : "/config/ruledb/who/{ogroup}/ldap",
4169 "text" : "ldap"
4170 },
4171 {
4172 "children" : [
4173 {
4174 "info" : {
4175 "GET" : {
6bd70b95 4176 "allowtoken" : 1,
9fda36b0
DM
4177 "description" : "Read 'LDAP User' object settings.",
4178 "method" : "GET",
4179 "name" : "read_ldapuser",
4180 "parameters" : {
4181 "additionalProperties" : 0,
4182 "properties" : {
4183 "id" : {
4184 "description" : "Object ID.",
4185 "type" : "integer",
4186 "typetext" : "<integer>"
4187 },
4188 "ogroup" : {
4189 "description" : "Object Groups ID.",
4190 "type" : "integer",
4191 "typetext" : "<integer>"
4192 }
4193 }
4194 },
c061d61d
DM
4195 "permissions" : {
4196 "check" : [
4197 "admin",
4198 "audit"
4199 ]
4200 },
9fda36b0
DM
4201 "proxyto" : "master",
4202 "returns" : {
4203 "properties" : {
4204 "id" : {
4205 "type" : "integer"
4206 }
4207 },
4208 "type" : "object"
4209 }
4210 },
4211 "PUT" : {
6bd70b95 4212 "allowtoken" : 1,
9fda36b0
DM
4213 "description" : "Update 'LDAP User' object.",
4214 "method" : "PUT",
4215 "name" : "update_ldapuser",
4216 "parameters" : {
4217 "additionalProperties" : 0,
4218 "properties" : {
4219 "account" : {
4220 "description" : "LDAP user account name.",
4221 "maxLength" : 1024,
4222 "minLength" : 1,
4223 "type" : "string",
4224 "typetext" : "<string>"
4225 },
4226 "id" : {
4227 "description" : "Object ID.",
4228 "type" : "integer",
4229 "typetext" : "<integer>"
4230 },
4231 "ogroup" : {
4232 "description" : "Object Groups ID.",
4233 "type" : "integer",
4234 "typetext" : "<integer>"
4235 },
4236 "profile" : {
4237 "description" : "Profile ID.",
4238 "format" : "pve-configid",
4239 "type" : "string",
4240 "typetext" : "<string>"
4241 }
4242 }
4243 },
c061d61d
DM
4244 "permissions" : {
4245 "check" : [
4246 "admin"
4247 ]
4248 },
9fda36b0
DM
4249 "protected" : 1,
4250 "proxyto" : "master",
4251 "returns" : {
4252 "type" : "null"
4253 }
4254 }
4255 },
4256 "leaf" : 1,
4257 "path" : "/config/ruledb/who/{ogroup}/ldapuser/{id}",
4258 "text" : "{id}"
4259 }
4260 ],
4261 "info" : {
4262 "POST" : {
6bd70b95 4263 "allowtoken" : 1,
9fda36b0
DM
4264 "description" : "Add 'LDAP User' object.",
4265 "method" : "POST",
4266 "name" : "ldapuser",
4267 "parameters" : {
4268 "additionalProperties" : 0,
4269 "properties" : {
4270 "account" : {
4271 "description" : "LDAP user account name.",
4272 "maxLength" : 1024,
4273 "minLength" : 1,
4274 "type" : "string",
4275 "typetext" : "<string>"
4276 },
4277 "ogroup" : {
4278 "description" : "Object Groups ID.",
4279 "type" : "integer",
4280 "typetext" : "<integer>"
4281 },
4282 "profile" : {
4283 "description" : "Profile ID.",
4284 "format" : "pve-configid",
4285 "type" : "string",
4286 "typetext" : "<string>"
4287 }
4288 }
4289 },
c061d61d
DM
4290 "permissions" : {
4291 "check" : [
4292 "admin"
4293 ]
4294 },
9fda36b0
DM
4295 "protected" : 1,
4296 "proxyto" : "master",
4297 "returns" : {
4298 "description" : "The object ID.",
4299 "type" : "integer"
4300 }
4301 }
4302 },
4303 "leaf" : 0,
4304 "path" : "/config/ruledb/who/{ogroup}/ldapuser",
4305 "text" : "ldapuser"
4306 }
4307 ],
4308 "info" : {
4309 "DELETE" : {
6bd70b95 4310 "allowtoken" : 1,
9fda36b0
DM
4311 "description" : "Delete a 'who' group.",
4312 "method" : "DELETE",
4313 "name" : "delete_{$oclass}_group",
4314 "parameters" : {
4315 "additionalProperties" : 0,
4316 "properties" : {
4317 "ogroup" : {
4318 "description" : "Object Group ID.",
4319 "type" : "integer",
4320 "typetext" : "<integer>"
4321 }
4322 }
4323 },
732d76e1
DM
4324 "permissions" : {
4325 "check" : [
4326 "admin"
4327 ]
4328 },
9fda36b0
DM
4329 "protected" : 1,
4330 "proxyto" : "master",
4331 "returns" : {
4332 "type" : "null"
4333 }
4334 },
4335 "GET" : {
6bd70b95 4336 "allowtoken" : 1,
9fda36b0
DM
4337 "description" : "Directory index.",
4338 "method" : "GET",
4339 "name" : "index",
4340 "parameters" : {
4341 "additionalProperties" : 0,
4342 "properties" : {
4343 "ogroup" : {
4344 "description" : "Object Group ID.",
4345 "type" : "integer",
4346 "typetext" : "<integer>"
4347 }
4348 }
4349 },
732d76e1
DM
4350 "permissions" : {
4351 "check" : [
4352 "admin",
4353 "audit"
4354 ]
4355 },
9fda36b0
DM
4356 "returns" : {
4357 "items" : {
4358 "properties" : {
4359 "subdir" : {
4360 "type" : "string"
4361 }
4362 },
4363 "type" : "object"
4364 },
4365 "links" : [
4366 {
4367 "href" : "{subdir}",
4368 "rel" : "child"
4369 }
4370 ],
4371 "type" : "array"
4372 }
4373 }
4374 },
4375 "leaf" : 0,
4376 "path" : "/config/ruledb/who/{ogroup}",
4377 "text" : "{ogroup}"
4378 }
4379 ],
4380 "info" : {
4381 "GET" : {
6bd70b95 4382 "allowtoken" : 1,
9fda36b0
DM
4383 "description" : "Get list of 'who' groups.",
4384 "method" : "GET",
4385 "name" : "list_who_groups",
4386 "parameters" : {
4387 "additionalProperties" : 0
4388 },
732d76e1
DM
4389 "permissions" : {
4390 "check" : [
4391 "admin",
4392 "audit"
4393 ]
4394 },
9fda36b0
DM
4395 "proxyto" : "master",
4396 "returns" : {
4397 "items" : {
4398 "properties" : {
4399 "id" : {
4400 "type" : "integer"
4401 }
4402 },
4403 "type" : "object"
4404 },
4405 "type" : "array"
4406 }
4407 },
4408 "POST" : {
6bd70b95 4409 "allowtoken" : 1,
9fda36b0
DM
4410 "description" : "Create a new 'who' group.",
4411 "method" : "POST",
4412 "name" : "create_who_group",
4413 "parameters" : {
4414 "additionalProperties" : 0,
4415 "properties" : {
eff914dc
DM
4416 "info" : {
4417 "description" : "Informational comment.",
4418 "maxLength" : 255,
4419 "optional" : 1,
4420 "type" : "string",
4421 "typetext" : "<string>"
4422 },
4423 "name" : {
4424 "description" : "Group name.",
4425 "maxLength" : 255,
4426 "type" : "string",
4427 "typetext" : "<string>"
4428 }
4429 }
4430 },
732d76e1
DM
4431 "permissions" : {
4432 "check" : [
4433 "admin"
4434 ]
4435 },
eff914dc
DM
4436 "protected" : 1,
4437 "proxyto" : "master",
4438 "returns" : {
4439 "type" : "integer"
4440 }
410dc2c9
DM
4441 }
4442 },
eff914dc 4443 "leaf" : 0,
410dc2c9
DM
4444 "path" : "/config/ruledb/who",
4445 "text" : "who"
4446 }
4447 ],
4448 "info" : {
4449 "GET" : {
6bd70b95 4450 "allowtoken" : 1,
410dc2c9
DM
4451 "description" : "Directory index.",
4452 "method" : "GET",
4453 "name" : "index",
4454 "parameters" : {
4455 "additionalProperties" : 0
4456 },
732d76e1
DM
4457 "permissions" : {
4458 "check" : [
4459 "admin",
4460 "audit"
4461 ]
4462 },
410dc2c9
DM
4463 "returns" : {
4464 "items" : {
4465 "properties" : {},
4466 "type" : "object"
4467 },
4468 "links" : [
4469 {
4470 "href" : "{name}",
4471 "rel" : "child"
4472 }
4473 ],
4474 "type" : "array"
4475 }
d7cd791b
DM
4476 },
4477 "POST" : {
6bd70b95 4478 "allowtoken" : 1,
d7cd791b
DM
4479 "description" : "Reset PMG rule database back to factory defaults.",
4480 "method" : "POST",
4481 "name" : "reset_ruledb",
4482 "parameters" : {
4483 "additionalProperties" : 0
4484 },
4a46ced6
DM
4485 "permissions" : {
4486 "check" : [
4487 "admin"
4488 ]
4489 },
d7cd791b
DM
4490 "protected" : 1,
4491 "returns" : {
4492 "type" : "null"
4493 }
410dc2c9
DM
4494 }
4495 },
4496 "leaf" : 0,
4497 "path" : "/config/ruledb",
4498 "text" : "ruledb"
4499 },
4500 {
4501 "children" : [
4502 {
eff914dc
DM
4503 "children" : [
4504 {
4505 "info" : {
4506 "DELETE" : {
6bd70b95 4507 "allowtoken" : 1,
eff914dc
DM
4508 "description" : "Remove an object from the SMTP whitelist.",
4509 "method" : "DELETE",
4510 "name" : "delete_object",
4511 "parameters" : {
4512 "additionalProperties" : 0,
4513 "properties" : {
4514 "id" : {
4515 "description" : "Object ID.",
4516 "type" : "integer",
4517 "typetext" : "<integer>"
4518 }
4519 }
4520 },
732d76e1
DM
4521 "permissions" : {
4522 "check" : [
4523 "admin"
4524 ]
4525 },
bb6e6e0d 4526 "protected" : 1,
eff914dc
DM
4527 "proxyto" : "master",
4528 "returns" : {
4529 "type" : "null"
4530 }
4531 }
4532 },
4533 "leaf" : 1,
4534 "path" : "/config/whitelist/objects/{id}",
4535 "text" : "{id}"
4536 }
4537 ],
410dc2c9 4538 "info" : {
eff914dc 4539 "GET" : {
6bd70b95 4540 "allowtoken" : 1,
eff914dc
DM
4541 "description" : "Get list of all SMTP whitelist entries.",
4542 "method" : "GET",
4543 "name" : "objects",
4544 "parameters" : {
4545 "additionalProperties" : 0
4546 },
732d76e1
DM
4547 "permissions" : {
4548 "check" : [
4549 "admin",
4550 "audit"
4551 ]
4552 },
eff914dc
DM
4553 "proxyto" : "master",
4554 "returns" : {
4555 "items" : {
4556 "properties" : {
4557 "id" : {
4558 "type" : "integer"
4559 }
4560 },
4561 "type" : "object"
4562 },
4563 "links" : [
4564 {
4565 "href" : "{id}",
4566 "rel" : "child"
4567 }
4568 ],
4569 "type" : "array"
4570 }
4571 }
4572 },
4573 "leaf" : 0,
4574 "path" : "/config/whitelist/objects",
4575 "text" : "objects"
4576 },
4577 {
4578 "children" : [
4579 {
4580 "info" : {
4581 "GET" : {
6bd70b95 4582 "allowtoken" : 1,
eff914dc
DM
4583 "description" : "Read 'Mail address' object settings.",
4584 "method" : "GET",
4585 "name" : "read_email",
4586 "parameters" : {
4587 "additionalProperties" : 0,
4588 "properties" : {
4589 "id" : {
4590 "description" : "Object ID.",
4591 "type" : "integer",
4592 "typetext" : "<integer>"
4593 }
4594 }
4595 },
c061d61d
DM
4596 "permissions" : {
4597 "check" : [
4598 "admin",
4599 "audit"
4600 ]
4601 },
eff914dc
DM
4602 "proxyto" : "master",
4603 "returns" : {
4604 "properties" : {
4605 "id" : {
4606 "type" : "integer"
4607 }
4608 },
4609 "type" : "object"
4610 }
4611 },
4612 "PUT" : {
6bd70b95 4613 "allowtoken" : 1,
eff914dc
DM
4614 "description" : "Update 'Mail address' object.",
4615 "method" : "PUT",
4616 "name" : "update_email",
4617 "parameters" : {
4618 "additionalProperties" : 0,
4619 "properties" : {
4620 "email" : {
4621 "description" : "Email address.",
4622 "format" : "email",
4623 "type" : "string",
4624 "typetext" : "<string>"
4625 },
4626 "id" : {
4627 "description" : "Object ID.",
4628 "type" : "integer",
4629 "typetext" : "<integer>"
4630 }
4631 }
4632 },
c061d61d
DM
4633 "permissions" : {
4634 "check" : [
4635 "admin"
4636 ]
4637 },
a55e94a6 4638 "protected" : 1,
eff914dc
DM
4639 "proxyto" : "master",
4640 "returns" : {
4641 "type" : "null"
4642 }
4643 }
4644 },
4645 "leaf" : 1,
4646 "path" : "/config/whitelist/email/{id}",
4647 "text" : "{id}"
4648 }
4649 ],
4650 "info" : {
4651 "POST" : {
6bd70b95 4652 "allowtoken" : 1,
eff914dc
DM
4653 "description" : "Add 'Mail address' object.",
4654 "method" : "POST",
4655 "name" : "email",
410dc2c9
DM
4656 "parameters" : {
4657 "additionalProperties" : 0,
4658 "properties" : {
eff914dc
DM
4659 "email" : {
4660 "description" : "Email address.",
4661 "format" : "email",
410dc2c9
DM
4662 "type" : "string",
4663 "typetext" : "<string>"
4664 }
4665 }
4666 },
c061d61d
DM
4667 "permissions" : {
4668 "check" : [
4669 "admin"
4670 ]
4671 },
a55e94a6 4672 "protected" : 1,
410dc2c9
DM
4673 "proxyto" : "master",
4674 "returns" : {
eff914dc
DM
4675 "description" : "The object ID.",
4676 "type" : "integer"
410dc2c9 4677 }
eff914dc
DM
4678 }
4679 },
4680 "leaf" : 0,
4681 "path" : "/config/whitelist/email",
4682 "text" : "email"
4683 },
4684 {
4685 "children" : [
4686 {
4687 "info" : {
4688 "GET" : {
6bd70b95 4689 "allowtoken" : 1,
eff914dc
DM
4690 "description" : "Read 'Mail address' object settings.",
4691 "method" : "GET",
4692 "name" : "read_receiver",
4693 "parameters" : {
4694 "additionalProperties" : 0,
4695 "properties" : {
4696 "id" : {
4697 "description" : "Object ID.",
4698 "type" : "integer",
4699 "typetext" : "<integer>"
4700 }
4701 }
4702 },
c061d61d
DM
4703 "permissions" : {
4704 "check" : [
4705 "admin",
4706 "audit"
4707 ]
4708 },
eff914dc
DM
4709 "proxyto" : "master",
4710 "returns" : {
4711 "properties" : {
4712 "id" : {
4713 "type" : "integer"
4714 }
4715 },
4716 "type" : "object"
4717 }
4718 },
4719 "PUT" : {
6bd70b95 4720 "allowtoken" : 1,
eff914dc
DM
4721 "description" : "Update 'Mail address' object.",
4722 "method" : "PUT",
4723 "name" : "update_receiver",
4724 "parameters" : {
4725 "additionalProperties" : 0,
4726 "properties" : {
4727 "email" : {
4728 "description" : "Email address.",
4729 "format" : "email",
4730 "type" : "string",
4731 "typetext" : "<string>"
4732 },
4733 "id" : {
4734 "description" : "Object ID.",
4735 "type" : "integer",
4736 "typetext" : "<integer>"
4737 }
4738 }
4739 },
c061d61d
DM
4740 "permissions" : {
4741 "check" : [
4742 "admin"
4743 ]
4744 },
a55e94a6 4745 "protected" : 1,
eff914dc
DM
4746 "proxyto" : "master",
4747 "returns" : {
4748 "type" : "null"
4749 }
4750 }
4751 },
4752 "leaf" : 1,
4753 "path" : "/config/whitelist/receiver/{id}",
4754 "text" : "{id}"
4755 }
4756 ],
4757 "info" : {
4758 "POST" : {
6bd70b95 4759 "allowtoken" : 1,
eff914dc
DM
4760 "description" : "Add 'Mail address' object.",
4761 "method" : "POST",
4762 "name" : "receiver",
410dc2c9
DM
4763 "parameters" : {
4764 "additionalProperties" : 0,
4765 "properties" : {
eff914dc
DM
4766 "email" : {
4767 "description" : "Email address.",
4768 "format" : "email",
410dc2c9
DM
4769 "type" : "string",
4770 "typetext" : "<string>"
4771 }
4772 }
4773 },
c061d61d
DM
4774 "permissions" : {
4775 "check" : [
4776 "admin"
4777 ]
4778 },
a55e94a6 4779 "protected" : 1,
410dc2c9 4780 "proxyto" : "master",
eff914dc
DM
4781 "returns" : {
4782 "description" : "The object ID.",
4783 "type" : "integer"
4784 }
4785 }
4786 },
4787 "leaf" : 0,
4788 "path" : "/config/whitelist/receiver",
4789 "text" : "receiver"
4790 },
4791 {
4792 "children" : [
4793 {
4794 "info" : {
4795 "GET" : {
6bd70b95 4796 "allowtoken" : 1,
eff914dc
DM
4797 "description" : "Read 'Domain' object settings.",
4798 "method" : "GET",
4799 "name" : "read_domain",
4800 "parameters" : {
4801 "additionalProperties" : 0,
4802 "properties" : {
4803 "id" : {
4804 "description" : "Object ID.",
4805 "type" : "integer",
4806 "typetext" : "<integer>"
4807 }
4808 }
4809 },
c061d61d
DM
4810 "permissions" : {
4811 "check" : [
4812 "admin",
4813 "audit"
4814 ]
4815 },
eff914dc
DM
4816 "proxyto" : "master",
4817 "returns" : {
4818 "properties" : {
4819 "id" : {
4820 "type" : "integer"
4821 }
4822 },
4823 "type" : "object"
4824 }
4825 },
4826 "PUT" : {
6bd70b95 4827 "allowtoken" : 1,
eff914dc
DM
4828 "description" : "Update 'Domain' object.",
4829 "method" : "PUT",
4830 "name" : "update_domain",
4831 "parameters" : {
4832 "additionalProperties" : 0,
4833 "properties" : {
4834 "domain" : {
4835 "description" : "DNS domain name (Sender).",
4836 "format" : "dns-name",
4837 "type" : "string",
4838 "typetext" : "<string>"
4839 },
4840 "id" : {
4841 "description" : "Object ID.",
4842 "type" : "integer",
4843 "typetext" : "<integer>"
4844 }
4845 }
4846 },
c061d61d
DM
4847 "permissions" : {
4848 "check" : [
4849 "admin"
4850 ]
4851 },
a55e94a6 4852 "protected" : 1,
eff914dc
DM
4853 "proxyto" : "master",
4854 "returns" : {
4855 "type" : "null"
4856 }
4857 }
4858 },
4859 "leaf" : 1,
4860 "path" : "/config/whitelist/domain/{id}",
4861 "text" : "{id}"
4862 }
4863 ],
4864 "info" : {
4865 "POST" : {
6bd70b95 4866 "allowtoken" : 1,
eff914dc
DM
4867 "description" : "Add 'Domain' object.",
4868 "method" : "POST",
4869 "name" : "domain",
410dc2c9
DM
4870 "parameters" : {
4871 "additionalProperties" : 0,
4872 "properties" : {
eff914dc
DM
4873 "domain" : {
4874 "description" : "DNS domain name (Sender).",
4875 "format" : "dns-name",
410dc2c9
DM
4876 "type" : "string",
4877 "typetext" : "<string>"
eff914dc
DM
4878 }
4879 }
4880 },
c061d61d
DM
4881 "permissions" : {
4882 "check" : [
4883 "admin"
4884 ]
4885 },
a55e94a6 4886 "protected" : 1,
eff914dc
DM
4887 "proxyto" : "master",
4888 "returns" : {
4889 "description" : "The object ID.",
4890 "type" : "integer"
4891 }
4892 }
4893 },
4894 "leaf" : 0,
4895 "path" : "/config/whitelist/domain",
4896 "text" : "domain"
4897 },
4898 {
4899 "children" : [
4900 {
4901 "info" : {
4902 "GET" : {
6bd70b95 4903 "allowtoken" : 1,
eff914dc
DM
4904 "description" : "Read 'Domain' object settings.",
4905 "method" : "GET",
4906 "name" : "read_receiver_domain",
4907 "parameters" : {
4908 "additionalProperties" : 0,
4909 "properties" : {
4910 "id" : {
4911 "description" : "Object ID.",
4912 "type" : "integer",
4913 "typetext" : "<integer>"
4914 }
4915 }
410dc2c9 4916 },
c061d61d
DM
4917 "permissions" : {
4918 "check" : [
4919 "admin",
4920 "audit"
4921 ]
4922 },
eff914dc
DM
4923 "proxyto" : "master",
4924 "returns" : {
4925 "properties" : {
4926 "id" : {
4927 "type" : "integer"
4928 }
4929 },
4930 "type" : "object"
4931 }
4932 },
4933 "PUT" : {
6bd70b95 4934 "allowtoken" : 1,
eff914dc
DM
4935 "description" : "Update 'Domain' object.",
4936 "method" : "PUT",
4937 "name" : "update_receiver_domain",
4938 "parameters" : {
4939 "additionalProperties" : 0,
4940 "properties" : {
4941 "domain" : {
4942 "description" : "DNS domain name (Sender).",
4943 "format" : "dns-name",
4944 "type" : "string",
4945 "typetext" : "<string>"
4946 },
4947 "id" : {
4948 "description" : "Object ID.",
4949 "type" : "integer",
4950 "typetext" : "<integer>"
4951 }
4952 }
410dc2c9 4953 },
c061d61d
DM
4954 "permissions" : {
4955 "check" : [
4956 "admin"
4957 ]
4958 },
a55e94a6 4959 "protected" : 1,
eff914dc
DM
4960 "proxyto" : "master",
4961 "returns" : {
4962 "type" : "null"
4963 }
4964 }
4965 },
4966 "leaf" : 1,
4967 "path" : "/config/whitelist/receiver_domain/{id}",
4968 "text" : "{id}"
4969 }
4970 ],
4971 "info" : {
4972 "POST" : {
6bd70b95 4973 "allowtoken" : 1,
eff914dc
DM
4974 "description" : "Add 'Domain' object.",
4975 "method" : "POST",
4976 "name" : "receiver_domain",
4977 "parameters" : {
4978 "additionalProperties" : 0,
4979 "properties" : {
4980 "domain" : {
4981 "description" : "DNS domain name (Sender).",
4982 "format" : "dns-name",
410dc2c9
DM
4983 "type" : "string",
4984 "typetext" : "<string>"
eff914dc
DM
4985 }
4986 }
4987 },
c061d61d
DM
4988 "permissions" : {
4989 "check" : [
4990 "admin"
4991 ]
4992 },
a55e94a6 4993 "protected" : 1,
eff914dc
DM
4994 "proxyto" : "master",
4995 "returns" : {
4996 "description" : "The object ID.",
4997 "type" : "integer"
4998 }
4999 }
5000 },
5001 "leaf" : 0,
5002 "path" : "/config/whitelist/receiver_domain",
5003 "text" : "receiver_domain"
5004 },
5005 {
5006 "children" : [
5007 {
5008 "info" : {
5009 "GET" : {
6bd70b95 5010 "allowtoken" : 1,
eff914dc
DM
5011 "description" : "Read 'Regular Expression' object settings.",
5012 "method" : "GET",
5013 "name" : "read_regex",
5014 "parameters" : {
5015 "additionalProperties" : 0,
5016 "properties" : {
5017 "id" : {
5018 "description" : "Object ID.",
5019 "type" : "integer",
5020 "typetext" : "<integer>"
5021 }
5022 }
410dc2c9 5023 },
c061d61d
DM
5024 "permissions" : {
5025 "check" : [
5026 "admin",
5027 "audit"
5028 ]
5029 },
eff914dc
DM
5030 "proxyto" : "master",
5031 "returns" : {
5032 "properties" : {
5033 "id" : {
5034 "type" : "integer"
5035 }
5036 },
5037 "type" : "object"
5038 }
5039 },
5040 "PUT" : {
6bd70b95 5041 "allowtoken" : 1,
eff914dc
DM
5042 "description" : "Update 'Regular Expression' object.",
5043 "method" : "PUT",
5044 "name" : "update_regex",
5045 "parameters" : {
5046 "additionalProperties" : 0,
5047 "properties" : {
5048 "id" : {
5049 "description" : "Object ID.",
5050 "type" : "integer",
5051 "typetext" : "<integer>"
5052 },
5053 "regex" : {
5054 "description" : "Email address regular expression.",
5055 "maxLength" : 1024,
5056 "type" : "string",
5057 "typetext" : "<string>"
5058 }
5059 }
5060 },
c061d61d
DM
5061 "permissions" : {
5062 "check" : [
5063 "admin"
5064 ]
5065 },
a55e94a6 5066 "protected" : 1,
eff914dc
DM
5067 "proxyto" : "master",
5068 "returns" : {
5069 "type" : "null"
5070 }
5071 }
5072 },
5073 "leaf" : 1,
5074 "path" : "/config/whitelist/regex/{id}",
5075 "text" : "{id}"
5076 }
5077 ],
5078 "info" : {
5079 "POST" : {
6bd70b95 5080 "allowtoken" : 1,
eff914dc
DM
5081 "description" : "Add 'Regular Expression' object.",
5082 "method" : "POST",
5083 "name" : "regex",
5084 "parameters" : {
5085 "additionalProperties" : 0,
5086 "properties" : {
5087 "regex" : {
5088 "description" : "Email address regular expression.",
5089 "maxLength" : 1024,
410dc2c9
DM
5090 "type" : "string",
5091 "typetext" : "<string>"
eff914dc
DM
5092 }
5093 }
5094 },
c061d61d
DM
5095 "permissions" : {
5096 "check" : [
5097 "admin"
5098 ]
5099 },
a55e94a6 5100 "protected" : 1,
eff914dc
DM
5101 "proxyto" : "master",
5102 "returns" : {
5103 "description" : "The object ID.",
5104 "type" : "integer"
5105 }
5106 }
5107 },
5108 "leaf" : 0,
5109 "path" : "/config/whitelist/regex",
5110 "text" : "regex"
5111 },
5112 {
5113 "children" : [
5114 {
5115 "info" : {
5116 "GET" : {
6bd70b95 5117 "allowtoken" : 1,
eff914dc
DM
5118 "description" : "Read 'Regular Expression' object settings.",
5119 "method" : "GET",
5120 "name" : "read_receiver_regex",
5121 "parameters" : {
5122 "additionalProperties" : 0,
5123 "properties" : {
5124 "id" : {
5125 "description" : "Object ID.",
5126 "type" : "integer",
5127 "typetext" : "<integer>"
5128 }
5129 }
5130 },
c061d61d
DM
5131 "permissions" : {
5132 "check" : [
5133 "admin",
5134 "audit"
5135 ]
5136 },
eff914dc
DM
5137 "proxyto" : "master",
5138 "returns" : {
5139 "properties" : {
5140 "id" : {
5141 "type" : "integer"
5142 }
5143 },
5144 "type" : "object"
5145 }
5146 },
5147 "PUT" : {
6bd70b95 5148 "allowtoken" : 1,
eff914dc
DM
5149 "description" : "Update 'Regular Expression' object.",
5150 "method" : "PUT",
5151 "name" : "update_receiver_regex",
5152 "parameters" : {
5153 "additionalProperties" : 0,
5154 "properties" : {
5155 "id" : {
5156 "description" : "Object ID.",
5157 "type" : "integer",
5158 "typetext" : "<integer>"
5159 },
5160 "regex" : {
5161 "description" : "Email address regular expression.",
5162 "maxLength" : 1024,
5163 "type" : "string",
5164 "typetext" : "<string>"
5165 }
5166 }
5167 },
c061d61d
DM
5168 "permissions" : {
5169 "check" : [
5170 "admin"
5171 ]
5172 },
a55e94a6 5173 "protected" : 1,
eff914dc
DM
5174 "proxyto" : "master",
5175 "returns" : {
5176 "type" : "null"
5177 }
5178 }
5179 },
5180 "leaf" : 1,
5181 "path" : "/config/whitelist/receiver_regex/{id}",
5182 "text" : "{id}"
5183 }
5184 ],
5185 "info" : {
5186 "POST" : {
6bd70b95 5187 "allowtoken" : 1,
eff914dc
DM
5188 "description" : "Add 'Regular Expression' object.",
5189 "method" : "POST",
5190 "name" : "receiver_regex",
5191 "parameters" : {
5192 "additionalProperties" : 0,
5193 "properties" : {
5194 "regex" : {
5195 "description" : "Email address regular expression.",
5196 "maxLength" : 1024,
5197 "type" : "string",
5198 "typetext" : "<string>"
5199 }
5200 }
5201 },
c061d61d
DM
5202 "permissions" : {
5203 "check" : [
5204 "admin"
5205 ]
5206 },
a55e94a6 5207 "protected" : 1,
eff914dc
DM
5208 "proxyto" : "master",
5209 "returns" : {
5210 "description" : "The object ID.",
5211 "type" : "integer"
5212 }
5213 }
5214 },
5215 "leaf" : 0,
5216 "path" : "/config/whitelist/receiver_regex",
5217 "text" : "receiver_regex"
5218 },
5219 {
5220 "children" : [
5221 {
5222 "info" : {
5223 "GET" : {
6bd70b95 5224 "allowtoken" : 1,
eff914dc
DM
5225 "description" : "Read 'IP Address' object settings.",
5226 "method" : "GET",
5227 "name" : "read_ip",
5228 "parameters" : {
5229 "additionalProperties" : 0,
5230 "properties" : {
5231 "id" : {
5232 "description" : "Object ID.",
5233 "type" : "integer",
5234 "typetext" : "<integer>"
5235 }
5236 }
5237 },
c061d61d
DM
5238 "permissions" : {
5239 "check" : [
5240 "admin",
5241 "audit"
5242 ]
5243 },
eff914dc
DM
5244 "proxyto" : "master",
5245 "returns" : {
5246 "properties" : {
5247 "id" : {
5248 "type" : "integer"
5249 }
5250 },
5251 "type" : "object"
5252 }
5253 },
5254 "PUT" : {
6bd70b95 5255 "allowtoken" : 1,
eff914dc
DM
5256 "description" : "Update 'IP Address' object.",
5257 "method" : "PUT",
5258 "name" : "update_ip",
5259 "parameters" : {
5260 "additionalProperties" : 0,
5261 "properties" : {
5262 "id" : {
5263 "description" : "Object ID.",
5264 "type" : "integer",
5265 "typetext" : "<integer>"
5266 },
5267 "ip" : {
5268 "description" : "IP address",
5269 "format" : "ip",
5270 "type" : "string",
5271 "typetext" : "<string>"
5272 }
5273 }
5274 },
c061d61d
DM
5275 "permissions" : {
5276 "check" : [
5277 "admin"
5278 ]
5279 },
a55e94a6 5280 "protected" : 1,
eff914dc
DM
5281 "proxyto" : "master",
5282 "returns" : {
5283 "type" : "null"
5284 }
5285 }
5286 },
5287 "leaf" : 1,
5288 "path" : "/config/whitelist/ip/{id}",
5289 "text" : "{id}"
5290 }
5291 ],
5292 "info" : {
5293 "POST" : {
6bd70b95 5294 "allowtoken" : 1,
eff914dc
DM
5295 "description" : "Add 'IP Address' object.",
5296 "method" : "POST",
5297 "name" : "ip",
5298 "parameters" : {
5299 "additionalProperties" : 0,
5300 "properties" : {
5301 "ip" : {
5302 "description" : "IP address",
5303 "format" : "ip",
5304 "type" : "string",
5305 "typetext" : "<string>"
5306 }
5307 }
5308 },
c061d61d
DM
5309 "permissions" : {
5310 "check" : [
5311 "admin"
5312 ]
5313 },
a55e94a6 5314 "protected" : 1,
eff914dc
DM
5315 "proxyto" : "master",
5316 "returns" : {
5317 "description" : "The object ID.",
5318 "type" : "integer"
5319 }
5320 }
5321 },
5322 "leaf" : 0,
5323 "path" : "/config/whitelist/ip",
5324 "text" : "ip"
5325 },
5326 {
5327 "children" : [
5328 {
5329 "info" : {
5330 "GET" : {
6bd70b95 5331 "allowtoken" : 1,
eff914dc
DM
5332 "description" : "Read 'IP Network' object settings.",
5333 "method" : "GET",
5334 "name" : "read_network",
5335 "parameters" : {
5336 "additionalProperties" : 0,
5337 "properties" : {
5338 "id" : {
5339 "description" : "Object ID.",
5340 "type" : "integer",
5341 "typetext" : "<integer>"
5342 }
5343 }
5344 },
c061d61d
DM
5345 "permissions" : {
5346 "check" : [
5347 "admin",
5348 "audit"
5349 ]
5350 },
eff914dc
DM
5351 "proxyto" : "master",
5352 "returns" : {
5353 "properties" : {
5354 "id" : {
5355 "type" : "integer"
5356 }
5357 },
5358 "type" : "object"
5359 }
5360 },
5361 "PUT" : {
6bd70b95 5362 "allowtoken" : 1,
eff914dc
DM
5363 "description" : "Update 'IP Network' object.",
5364 "method" : "PUT",
5365 "name" : "update_network",
5366 "parameters" : {
5367 "additionalProperties" : 0,
5368 "properties" : {
5369 "cidr" : {
5370 "description" : "Network address in CIDR notation.",
5371 "format" : "CIDR",
5372 "type" : "string",
5373 "typetext" : "<string>"
5374 },
5375 "id" : {
5376 "description" : "Object ID.",
5377 "type" : "integer",
5378 "typetext" : "<integer>"
5379 }
5380 }
5381 },
c061d61d
DM
5382 "permissions" : {
5383 "check" : [
5384 "admin"
5385 ]
5386 },
a55e94a6 5387 "protected" : 1,
eff914dc
DM
5388 "proxyto" : "master",
5389 "returns" : {
5390 "type" : "null"
5391 }
5392 }
5393 },
5394 "leaf" : 1,
5395 "path" : "/config/whitelist/network/{id}",
5396 "text" : "{id}"
5397 }
5398 ],
5399 "info" : {
5400 "POST" : {
6bd70b95 5401 "allowtoken" : 1,
eff914dc
DM
5402 "description" : "Add 'IP Network' object.",
5403 "method" : "POST",
5404 "name" : "network",
5405 "parameters" : {
5406 "additionalProperties" : 0,
5407 "properties" : {
5408 "cidr" : {
5409 "description" : "Network address in CIDR notation.",
5410 "format" : "CIDR",
5411 "type" : "string",
5412 "typetext" : "<string>"
5413 }
5414 }
5415 },
c061d61d
DM
5416 "permissions" : {
5417 "check" : [
5418 "admin"
5419 ]
5420 },
a55e94a6 5421 "protected" : 1,
eff914dc
DM
5422 "proxyto" : "master",
5423 "returns" : {
5424 "description" : "The object ID.",
5425 "type" : "integer"
5426 }
5427 }
5428 },
5429 "leaf" : 0,
5430 "path" : "/config/whitelist/network",
5431 "text" : "network"
5432 }
5433 ],
5434 "info" : {
5435 "GET" : {
6bd70b95 5436 "allowtoken" : 1,
eff914dc
DM
5437 "description" : "Directory index.",
5438 "method" : "GET",
5439 "name" : "index",
5440 "parameters" : {
5441 "additionalProperties" : 0
5442 },
732d76e1
DM
5443 "permissions" : {
5444 "check" : [
5445 "admin",
5446 "audit"
5447 ]
5448 },
eff914dc
DM
5449 "returns" : {
5450 "items" : {
5451 "properties" : {
5452 "subdir" : {
5453 "type" : "string"
5454 }
5455 },
5456 "type" : "object"
5457 },
5458 "links" : [
5459 {
5460 "href" : "{subdir}",
5461 "rel" : "child"
5462 }
5463 ],
5464 "type" : "array"
5465 }
5466 }
5467 },
5468 "leaf" : 0,
5469 "path" : "/config/whitelist",
5470 "text" : "whitelist"
5471 },
5472 {
5473 "children" : [
5474 {
a55e94a6
DM
5475 "children" : [
5476 {
5477 "info" : {
5478 "GET" : {
6bd70b95 5479 "allowtoken" : 1,
a55e94a6
DM
5480 "description" : "Get LDAP profile configuration.",
5481 "method" : "GET",
5482 "name" : "read_config",
5483 "parameters" : {
5484 "additionalProperties" : 0,
5485 "properties" : {
5486 "profile" : {
5487 "description" : "Profile ID.",
5488 "format" : "pve-configid",
5489 "type" : "string",
5490 "typetext" : "<string>"
5491 }
5492 }
5493 },
5494 "permissions" : {
5495 "check" : [
4a46ced6
DM
5496 "admin",
5497 "audit"
a55e94a6
DM
5498 ]
5499 },
5500 "proxyto" : "master",
5501 "returns" : {}
5502 },
5503 "PUT" : {
6bd70b95 5504 "allowtoken" : 1,
a55e94a6
DM
5505 "description" : "Update LDAP profile settings.",
5506 "method" : "PUT",
5507 "name" : "update_config",
5508 "parameters" : {
5509 "additionalProperties" : 0,
5510 "properties" : {
5511 "accountattr" : {
732d76e1 5512 "default" : "sAMAccountName, uid",
a55e94a6 5513 "description" : "Account attribute name name.",
274b47fc 5514 "format" : "ldap-simple-attr-list",
a55e94a6 5515 "optional" : 1,
274b47fc
DM
5516 "type" : "string",
5517 "typetext" : "<string>"
a55e94a6
DM
5518 },
5519 "basedn" : {
5520 "description" : "Base domain name.",
5521 "optional" : 1,
5522 "type" : "string",
5523 "typetext" : "<string>"
5524 },
5525 "binddn" : {
5526 "description" : "Bind domain name.",
5527 "optional" : 1,
5528 "type" : "string",
5529 "typetext" : "<string>"
5530 },
5531 "bindpw" : {
5532 "description" : "Bind password.",
5533 "optional" : 1,
5534 "type" : "string",
5535 "typetext" : "<string>"
5536 },
241ac83c
TL
5537 "cafile" : {
5538 "description" : "Path to CA file. Only useful with option 'verify'",
5539 "optional" : 1,
5540 "type" : "string",
5541 "typetext" : "<string>"
5542 },
a55e94a6
DM
5543 "comment" : {
5544 "description" : "Description.",
5545 "maxLength" : 4096,
5546 "optional" : 1,
5547 "type" : "string",
5548 "typetext" : "<string>"
5549 },
5550 "delete" : {
5551 "description" : "A list of settings you want to delete.",
5552 "format" : "pve-configid-list",
5553 "maxLength" : 4096,
5554 "optional" : 1,
5555 "type" : "string",
5556 "typetext" : "<string>"
5557 },
5558 "digest" : {
5559 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
5560 "maxLength" : 40,
5561 "optional" : 1,
5562 "type" : "string",
5563 "typetext" : "<string>"
5564 },
5565 "disable" : {
5566 "description" : "Flag to disable/deactivate the entry.",
5567 "optional" : 1,
5568 "type" : "boolean",
5569 "typetext" : "<boolean>"
5570 },
5571 "filter" : {
5572 "description" : "LDAP filter.",
5573 "optional" : 1,
5574 "type" : "string",
5575 "typetext" : "<string>"
5576 },
5577 "groupbasedn" : {
5578 "description" : "Base domain name for groups.",
5579 "optional" : 1,
5580 "type" : "string",
5581 "typetext" : "<string>"
5582 },
732d76e1
DM
5583 "groupclass" : {
5584 "default" : "group, univentionGroup, ipausergroup",
5585 "description" : "List of objectclasses for groups.",
274b47fc 5586 "format" : "ldap-simple-attr-list",
732d76e1
DM
5587 "optional" : 1,
5588 "type" : "string",
5589 "typetext" : "<string>"
5590 },
a55e94a6 5591 "mailattr" : {
274b47fc 5592 "default" : "mail, userPrincipalName, proxyAddresses, othermailbox, mailAlternativeAddress",
a55e94a6 5593 "description" : "List of mail attribute names.",
274b47fc 5594 "format" : "ldap-simple-attr-list",
a55e94a6 5595 "optional" : 1,
274b47fc
DM
5596 "type" : "string",
5597 "typetext" : "<string>"
a55e94a6
DM
5598 },
5599 "mode" : {
5600 "default" : "ldap",
241ac83c 5601 "description" : "LDAP protocol mode ('ldap', 'ldaps' or 'ldap+starttls').",
a55e94a6
DM
5602 "enum" : [
5603 "ldap",
241ac83c
TL
5604 "ldaps",
5605 "ldap+starttls"
a55e94a6
DM
5606 ],
5607 "optional" : 1,
5608 "type" : "string"
5609 },
5610 "port" : {
5611 "description" : "Specify the port to connect to.",
5612 "maximum" : 65535,
5613 "minimum" : 1,
5614 "optional" : 1,
5615 "type" : "integer",
5616 "typetext" : "<integer> (1 - 65535)"
5617 },
5618 "profile" : {
5619 "description" : "Profile ID.",
5620 "format" : "pve-configid",
5621 "type" : "string",
5622 "typetext" : "<string>"
5623 },
5624 "server1" : {
5625 "description" : "Server address.",
5626 "format" : "address",
5627 "maxLength" : 256,
5628 "optional" : 1,
5629 "type" : "string",
5630 "typetext" : "<string>"
5631 },
5632 "server2" : {
5633 "description" : "Fallback server address. Userd when the first server is not available.",
5634 "format" : "address",
5635 "maxLength" : 256,
5636 "optional" : 1,
5637 "type" : "string",
5638 "typetext" : "<string>"
241ac83c
TL
5639 },
5640 "verify" : {
5641 "default" : 0,
5642 "description" : "Verify server certificate. Only useful with ldaps or ldap+starttls.",
5643 "optional" : 1,
5644 "type" : "boolean",
5645 "typetext" : "<boolean>"
a55e94a6 5646 }
732d76e1
DM
5647 },
5648 "type" : "object"
5649 },
5650 "permissions" : {
5651 "check" : [
5652 "admin"
5653 ]
5654 },
5655 "protected" : 1,
5656 "proxyto" : "master",
5657 "returns" : {
5658 "type" : "null"
5659 }
5660 }
5661 },
5662 "leaf" : 1,
5663 "path" : "/config/ldap/{profile}/config",
5664 "text" : "config"
5665 },
5666 {
5667 "info" : {
5668 "POST" : {
6bd70b95 5669 "allowtoken" : 1,
732d76e1
DM
5670 "description" : "Synchronice LDAP users to local database.",
5671 "method" : "POST",
5672 "name" : "sync_profile",
5673 "parameters" : {
5674 "additionalProperties" : 0,
5675 "properties" : {
5676 "profile" : {
5677 "description" : "Profile ID.",
5678 "format" : "pve-configid",
5679 "type" : "string",
5680 "typetext" : "<string>"
5681 }
5682 }
5683 },
5684 "permissions" : {
5685 "check" : [
5686 "admin"
5687 ]
5688 },
5689 "protected" : 1,
5690 "proxyto" : "master",
5691 "returns" : {
5692 "type" : "null"
5693 }
5694 }
5695 },
5696 "leaf" : 1,
5697 "path" : "/config/ldap/{profile}/sync",
5698 "text" : "sync"
5699 },
5700 {
5701 "children" : [
5702 {
5703 "info" : {
5704 "GET" : {
6bd70b95 5705 "allowtoken" : 1,
732d76e1
DM
5706 "description" : "Get all email addresses for the specified user.",
5707 "method" : "GET",
5708 "name" : "address_list",
5709 "parameters" : {
5710 "additionalProperties" : 0,
5711 "properties" : {
5712 "email" : {
5713 "description" : "Email address.",
5714 "format" : "email",
5715 "type" : "string",
5716 "typetext" : "<string>"
5717 },
5718 "profile" : {
5719 "description" : "Profile ID.",
5720 "format" : "pve-configid",
5721 "type" : "string",
5722 "typetext" : "<string>"
5723 }
5724 }
5725 },
5726 "permissions" : {
5727 "check" : [
4a46ced6
DM
5728 "admin",
5729 "audit"
732d76e1
DM
5730 ]
5731 },
5732 "protected" : 1,
5733 "proxyto" : "master",
5734 "returns" : {
5735 "items" : {
5736 "properties" : {
5737 "email" : {
5738 "type" : "string"
5739 },
5740 "primary" : {
5741 "type" : "boolean"
5742 }
5743 },
5744 "type" : "object"
5745 },
5746 "type" : "array"
5747 }
5748 }
a55e94a6 5749 },
732d76e1
DM
5750 "leaf" : 1,
5751 "path" : "/config/ldap/{profile}/users/{email}",
5752 "text" : "{email}"
a55e94a6 5753 }
732d76e1 5754 ],
a55e94a6 5755 "info" : {
732d76e1 5756 "GET" : {
6bd70b95 5757 "allowtoken" : 1,
732d76e1
DM
5758 "description" : "List LDAP users.",
5759 "method" : "GET",
5760 "name" : "profile_list_users",
a55e94a6
DM
5761 "parameters" : {
5762 "additionalProperties" : 0,
5763 "properties" : {
5764 "profile" : {
5765 "description" : "Profile ID.",
5766 "format" : "pve-configid",
5767 "type" : "string",
5768 "typetext" : "<string>"
5769 }
5770 }
5771 },
5772 "permissions" : {
5773 "check" : [
4a46ced6
DM
5774 "admin",
5775 "audit"
a55e94a6
DM
5776 ]
5777 },
5778 "protected" : 1,
5779 "proxyto" : "master",
5780 "returns" : {
732d76e1
DM
5781 "items" : {
5782 "properties" : {
5783 "account" : {
5784 "type" : "string"
5785 },
5786 "dn" : {
5787 "type" : "string"
5788 },
5789 "pmail" : {
5790 "type" : "string"
5791 }
5792 },
5793 "type" : "object"
5794 },
5795 "links" : [
5796 {
5797 "href" : "{pmail}",
5798 "rel" : "child"
5799 }
5800 ],
5801 "type" : "array"
a55e94a6
DM
5802 }
5803 }
5804 },
732d76e1
DM
5805 "leaf" : 0,
5806 "path" : "/config/ldap/{profile}/users",
5807 "text" : "users"
a55e94a6
DM
5808 },
5809 {
5810 "children" : [
5811 {
5812 "info" : {
5813 "GET" : {
6bd70b95 5814 "allowtoken" : 1,
732d76e1 5815 "description" : "List LDAP group members.",
a55e94a6 5816 "method" : "GET",
732d76e1 5817 "name" : "profile_list_group_members",
a55e94a6
DM
5818 "parameters" : {
5819 "additionalProperties" : 0,
5820 "properties" : {
732d76e1
DM
5821 "gid" : {
5822 "description" : "Group ID",
5823 "type" : "number",
5824 "typetext" : "<number>"
a55e94a6
DM
5825 },
5826 "profile" : {
5827 "description" : "Profile ID.",
5828 "format" : "pve-configid",
5829 "type" : "string",
5830 "typetext" : "<string>"
5831 }
5832 }
5833 },
5834 "permissions" : {
5835 "check" : [
4a46ced6
DM
5836 "admin",
5837 "audit"
a55e94a6
DM
5838 ]
5839 },
5840 "protected" : 1,
5841 "proxyto" : "master",
5842 "returns" : {
5843 "items" : {
5844 "properties" : {
732d76e1 5845 "account" : {
a55e94a6
DM
5846 "type" : "string"
5847 },
732d76e1
DM
5848 "dn" : {
5849 "type" : "string"
5850 },
5851 "pmail" : {
5852 "type" : "string"
a55e94a6
DM
5853 }
5854 },
5855 "type" : "object"
5856 },
5857 "type" : "array"
5858 }
5859 }
5860 },
5861 "leaf" : 1,
732d76e1
DM
5862 "path" : "/config/ldap/{profile}/groups/{gid}",
5863 "text" : "{gid}"
a55e94a6
DM
5864 }
5865 ],
5866 "info" : {
5867 "GET" : {
6bd70b95 5868 "allowtoken" : 1,
732d76e1 5869 "description" : "List LDAP groups.",
a55e94a6 5870 "method" : "GET",
732d76e1 5871 "name" : "profile_list_groups",
a55e94a6
DM
5872 "parameters" : {
5873 "additionalProperties" : 0,
5874 "properties" : {
5875 "profile" : {
5876 "description" : "Profile ID.",
5877 "format" : "pve-configid",
5878 "type" : "string",
5879 "typetext" : "<string>"
5880 }
5881 }
5882 },
5883 "permissions" : {
5884 "check" : [
4a46ced6
DM
5885 "admin",
5886 "audit"
a55e94a6
DM
5887 ]
5888 },
5889 "protected" : 1,
5890 "proxyto" : "master",
5891 "returns" : {
5892 "items" : {
5893 "properties" : {
a55e94a6
DM
5894 "dn" : {
5895 "type" : "string"
5896 },
732d76e1
DM
5897 "gid" : {
5898 "type" : "number"
a55e94a6
DM
5899 }
5900 },
5901 "type" : "object"
5902 },
732d76e1
DM
5903 "links" : [
5904 {
5905 "href" : "{gid}",
5906 "rel" : "child"
5907 }
5908 ],
a55e94a6
DM
5909 "type" : "array"
5910 }
5911 }
5912 },
732d76e1
DM
5913 "leaf" : 0,
5914 "path" : "/config/ldap/{profile}/groups",
5915 "text" : "groups"
5916 }
5917 ],
5918 "info" : {
5919 "DELETE" : {
6bd70b95 5920 "allowtoken" : 1,
732d76e1
DM
5921 "description" : "Delete an LDAP profile",
5922 "method" : "DELETE",
5923 "name" : "delete",
5924 "parameters" : {
5925 "additionalProperties" : 0,
5926 "properties" : {
5927 "profile" : {
5928 "description" : "Profile ID.",
5929 "format" : "pve-configid",
5930 "type" : "string",
5931 "typetext" : "<string>"
5932 }
5933 }
5934 },
5935 "permissions" : {
5936 "check" : [
5937 "admin"
5938 ]
5939 },
5940 "protected" : 1,
5941 "proxyto" : "master",
5942 "returns" : {
5943 "type" : "null"
5944 }
5945 },
5946 "GET" : {
6bd70b95 5947 "allowtoken" : 1,
732d76e1
DM
5948 "description" : "Directory index",
5949 "method" : "GET",
5950 "name" : "profile_index",
5951 "parameters" : {
5952 "additionalProperties" : 0,
5953 "properties" : {
5954 "profile" : {
5955 "description" : "Profile ID.",
5956 "format" : "pve-configid",
5957 "type" : "string",
5958 "typetext" : "<string>"
5959 }
5960 }
5961 },
5962 "permissions" : {
5963 "user" : "all"
5964 },
5965 "returns" : {
5966 "items" : {
5967 "properties" : {
5968 "subdir" : {
5969 "type" : "string"
5970 }
5971 },
5972 "type" : "object"
5973 },
5974 "links" : [
5975 {
5976 "href" : "{subdir}",
5977 "rel" : "child"
5978 }
5979 ],
5980 "type" : "array"
5981 }
5982 }
5983 },
5984 "leaf" : 0,
5985 "path" : "/config/ldap/{profile}",
5986 "text" : "{profile}"
5987 }
5988 ],
5989 "info" : {
5990 "GET" : {
6bd70b95 5991 "allowtoken" : 1,
732d76e1
DM
5992 "description" : "List configured LDAP profiles.",
5993 "method" : "GET",
5994 "name" : "index",
5995 "parameters" : {
5996 "additionalProperties" : 0
5997 },
5998 "permissions" : {
5999 "check" : [
4a46ced6
DM
6000 "admin",
6001 "audit"
732d76e1
DM
6002 ]
6003 },
6004 "proxyto" : "master",
6005 "returns" : {
6006 "items" : {
6007 "properties" : {
6008 "comment" : {
6009 "optional" : 1,
6010 "type" : "string"
6011 },
6012 "disable" : {
6013 "type" : "boolean"
6014 },
6015 "gcount" : {
6016 "optional" : 1,
6017 "type" : "integer"
6018 },
6019 "mcount" : {
6020 "optional" : 1,
6021 "type" : "integer"
6022 },
6023 "mode" : {
6024 "type" : "string"
6025 },
6026 "profile" : {
6027 "type" : "string"
6028 },
6029 "server1" : {
6030 "type" : "string"
6031 },
6032 "server2" : {
6033 "optional" : 1,
6034 "type" : "string"
6035 },
6036 "ucount" : {
6037 "optional" : 1,
6038 "type" : "integer"
6039 }
6040 },
6041 "type" : "object"
6042 },
6043 "links" : [
6044 {
6045 "href" : "{profile}",
6046 "rel" : "child"
6047 }
6048 ],
6049 "type" : "array"
6050 }
6051 },
6052 "POST" : {
6bd70b95 6053 "allowtoken" : 1,
732d76e1
DM
6054 "description" : "Add LDAP profile.",
6055 "method" : "POST",
6056 "name" : "create",
6057 "parameters" : {
6058 "additionalProperties" : 0,
6059 "properties" : {
6060 "accountattr" : {
6061 "default" : "sAMAccountName, uid",
6062 "description" : "Account attribute name name.",
274b47fc 6063 "format" : "ldap-simple-attr-list",
732d76e1 6064 "optional" : 1,
274b47fc
DM
6065 "type" : "string",
6066 "typetext" : "<string>"
732d76e1
DM
6067 },
6068 "basedn" : {
6069 "description" : "Base domain name.",
6070 "optional" : 1,
6071 "type" : "string",
6072 "typetext" : "<string>"
6073 },
6074 "binddn" : {
6075 "description" : "Bind domain name.",
6076 "optional" : 1,
6077 "type" : "string",
6078 "typetext" : "<string>"
6079 },
6080 "bindpw" : {
6081 "description" : "Bind password.",
6082 "optional" : 1,
6083 "type" : "string",
6084 "typetext" : "<string>"
6085 },
241ac83c
TL
6086 "cafile" : {
6087 "description" : "Path to CA file. Only useful with option 'verify'",
6088 "optional" : 1,
6089 "type" : "string",
6090 "typetext" : "<string>"
6091 },
732d76e1
DM
6092 "comment" : {
6093 "description" : "Description.",
6094 "maxLength" : 4096,
6095 "optional" : 1,
6096 "type" : "string",
6097 "typetext" : "<string>"
6098 },
6099 "disable" : {
6100 "description" : "Flag to disable/deactivate the entry.",
6101 "optional" : 1,
6102 "type" : "boolean",
6103 "typetext" : "<boolean>"
a55e94a6 6104 },
732d76e1
DM
6105 "filter" : {
6106 "description" : "LDAP filter.",
6107 "optional" : 1,
6108 "type" : "string",
6109 "typetext" : "<string>"
6110 },
6111 "groupbasedn" : {
6112 "description" : "Base domain name for groups.",
6113 "optional" : 1,
6114 "type" : "string",
6115 "typetext" : "<string>"
6116 },
6117 "groupclass" : {
6118 "default" : "group, univentionGroup, ipausergroup",
6119 "description" : "List of objectclasses for groups.",
274b47fc 6120 "format" : "ldap-simple-attr-list",
732d76e1
DM
6121 "optional" : 1,
6122 "type" : "string",
6123 "typetext" : "<string>"
6124 },
6125 "mailattr" : {
274b47fc 6126 "default" : "mail, userPrincipalName, proxyAddresses, othermailbox, mailAlternativeAddress",
732d76e1 6127 "description" : "List of mail attribute names.",
274b47fc 6128 "format" : "ldap-simple-attr-list",
732d76e1 6129 "optional" : 1,
274b47fc
DM
6130 "type" : "string",
6131 "typetext" : "<string>"
732d76e1
DM
6132 },
6133 "mode" : {
6134 "default" : "ldap",
241ac83c 6135 "description" : "LDAP protocol mode ('ldap', 'ldaps' or 'ldap+starttls').",
732d76e1
DM
6136 "enum" : [
6137 "ldap",
241ac83c
TL
6138 "ldaps",
6139 "ldap+starttls"
732d76e1
DM
6140 ],
6141 "optional" : 1,
6142 "type" : "string"
6143 },
6144 "port" : {
6145 "description" : "Specify the port to connect to.",
6146 "maximum" : 65535,
6147 "minimum" : 1,
6148 "optional" : 1,
6149 "type" : "integer",
6150 "typetext" : "<integer> (1 - 65535)"
6151 },
6152 "profile" : {
6153 "description" : "Profile ID.",
6154 "format" : "pve-configid",
6155 "type" : "string",
6156 "typetext" : "<string>"
6157 },
6158 "server1" : {
6159 "description" : "Server address.",
6160 "format" : "address",
6161 "maxLength" : 256,
6162 "optional" : 0,
6163 "type" : "string",
6164 "typetext" : "<string>"
6165 },
6166 "server2" : {
6167 "description" : "Fallback server address. Userd when the first server is not available.",
6168 "format" : "address",
6169 "maxLength" : 256,
6170 "optional" : 1,
6171 "type" : "string",
6172 "typetext" : "<string>"
241ac83c
TL
6173 },
6174 "verify" : {
6175 "default" : 0,
6176 "description" : "Verify server certificate. Only useful with ldaps or ldap+starttls.",
6177 "optional" : 1,
6178 "type" : "boolean",
6179 "typetext" : "<boolean>"
732d76e1
DM
6180 }
6181 },
6182 "type" : "object"
6183 },
6184 "permissions" : {
6185 "check" : [
6186 "admin"
6187 ]
6188 },
6189 "protected" : 1,
6190 "proxyto" : "master",
6191 "returns" : {
6192 "type" : "null"
6193 }
6194 }
6195 },
6196 "leaf" : 0,
6197 "path" : "/config/ldap",
6198 "text" : "ldap"
6199 },
6200 {
6201 "children" : [
6202 {
a55e94a6
DM
6203 "info" : {
6204 "DELETE" : {
6bd70b95 6205 "allowtoken" : 1,
732d76e1 6206 "description" : "Delete a relay domain",
a55e94a6
DM
6207 "method" : "DELETE",
6208 "name" : "delete",
6209 "parameters" : {
6210 "additionalProperties" : 0,
6211 "properties" : {
732d76e1
DM
6212 "domain" : {
6213 "description" : "Domain name.",
f225b3b4 6214 "format" : "transport-domain",
eff914dc
DM
6215 "type" : "string",
6216 "typetext" : "<string>"
6217 }
6218 }
6219 },
a55e94a6
DM
6220 "permissions" : {
6221 "check" : [
6222 "admin"
6223 ]
6224 },
eff914dc
DM
6225 "protected" : 1,
6226 "proxyto" : "master",
a55e94a6
DM
6227 "returns" : {
6228 "type" : "null"
6229 }
eff914dc 6230 },
a55e94a6 6231 "GET" : {
6bd70b95 6232 "allowtoken" : 1,
732d76e1 6233 "description" : "Read Domain data (comment).",
a55e94a6 6234 "method" : "GET",
732d76e1 6235 "name" : "read",
eff914dc
DM
6236 "parameters" : {
6237 "additionalProperties" : 0,
6238 "properties" : {
732d76e1
DM
6239 "domain" : {
6240 "description" : "Domain name.",
f225b3b4 6241 "format" : "transport-domain",
eff914dc
DM
6242 "type" : "string",
6243 "typetext" : "<string>"
a55e94a6
DM
6244 }
6245 }
6246 },
6247 "permissions" : {
732d76e1
DM
6248 "check" : [
6249 "admin",
6250 "audit"
6251 ]
a55e94a6 6252 },
732d76e1 6253 "proxyto" : "master",
a55e94a6 6254 "returns" : {
732d76e1
DM
6255 "properties" : {
6256 "comment" : {
6257 "type" : "string"
eff914dc 6258 },
732d76e1
DM
6259 "domain" : {
6260 "type" : "string"
6261 }
eff914dc 6262 },
732d76e1
DM
6263 "type" : "object"
6264 }
6265 },
6266 "PUT" : {
6bd70b95 6267 "allowtoken" : 1,
732d76e1
DM
6268 "description" : "Update relay domain data (comment).",
6269 "method" : "PUT",
6270 "name" : "write",
6271 "parameters" : {
6272 "additionalProperties" : 0,
6273 "properties" : {
6274 "comment" : {
6275 "description" : "Comment.",
6276 "type" : "string",
6277 "typetext" : "<string>"
6278 },
6279 "domain" : {
6280 "description" : "Domain name.",
f225b3b4 6281 "format" : "transport-domain",
732d76e1
DM
6282 "type" : "string",
6283 "typetext" : "<string>"
a55e94a6 6284 }
732d76e1
DM
6285 }
6286 },
6287 "permissions" : {
6288 "check" : [
6289 "admin"
6290 ]
6291 },
6292 "protected" : 1,
6293 "proxyto" : "master",
6294 "returns" : {
6295 "type" : "null"
eff914dc
DM
6296 }
6297 }
6298 },
732d76e1
DM
6299 "leaf" : 1,
6300 "path" : "/config/domains/{domain}",
6301 "text" : "{domain}"
eff914dc
DM
6302 }
6303 ],
6304 "info" : {
6305 "GET" : {
6bd70b95 6306 "allowtoken" : 1,
732d76e1 6307 "description" : "List relay domains.",
eff914dc
DM
6308 "method" : "GET",
6309 "name" : "index",
6310 "parameters" : {
6311 "additionalProperties" : 0
6312 },
a55e94a6
DM
6313 "permissions" : {
6314 "check" : [
732d76e1
DM
6315 "admin",
6316 "audit"
a55e94a6
DM
6317 ]
6318 },
eff914dc
DM
6319 "proxyto" : "master",
6320 "returns" : {
6321 "items" : {
6322 "properties" : {
a55e94a6 6323 "comment" : {
eff914dc 6324 "type" : "string"
a55e94a6 6325 },
732d76e1
DM
6326 "domain" : {
6327 "type" : "string"
eff914dc
DM
6328 }
6329 },
6330 "type" : "object"
6331 },
6332 "links" : [
6333 {
732d76e1 6334 "href" : "{domain}",
eff914dc
DM
6335 "rel" : "child"
6336 }
6337 ],
6338 "type" : "array"
6339 }
6340 },
6341 "POST" : {
6bd70b95 6342 "allowtoken" : 1,
732d76e1 6343 "description" : "Add relay domain.",
eff914dc
DM
6344 "method" : "POST",
6345 "name" : "create",
6346 "parameters" : {
6347 "additionalProperties" : 0,
6348 "properties" : {
a55e94a6 6349 "comment" : {
732d76e1 6350 "description" : "Comment.",
eff914dc 6351 "optional" : 1,
eff914dc
DM
6352 "type" : "string",
6353 "typetext" : "<string>"
6354 },
732d76e1
DM
6355 "domain" : {
6356 "description" : "Domain name.",
f225b3b4 6357 "format" : "transport-domain",
eff914dc
DM
6358 "type" : "string",
6359 "typetext" : "<string>"
6360 }
732d76e1 6361 }
eff914dc 6362 },
a55e94a6
DM
6363 "permissions" : {
6364 "check" : [
6365 "admin"
6366 ]
6367 },
eff914dc
DM
6368 "protected" : 1,
6369 "proxyto" : "master",
6370 "returns" : {
6371 "type" : "null"
6372 }
6373 }
6374 },
6375 "leaf" : 0,
732d76e1
DM
6376 "path" : "/config/domains",
6377 "text" : "domains"
eff914dc
DM
6378 },
6379 {
6380 "children" : [
6381 {
6382 "info" : {
6383 "DELETE" : {
6bd70b95 6384 "allowtoken" : 1,
732d76e1 6385 "description" : "Delete a fetchmail configuration entry.",
eff914dc
DM
6386 "method" : "DELETE",
6387 "name" : "delete",
6388 "parameters" : {
6389 "additionalProperties" : 0,
6390 "properties" : {
732d76e1
DM
6391 "id" : {
6392 "description" : "Unique ID",
6393 "maxLength" : 16,
6394 "pattern" : "[A-Za-z0-9]+",
6395 "type" : "string"
eff914dc
DM
6396 }
6397 }
6398 },
732d76e1
DM
6399 "permissions" : {
6400 "check" : [
6401 "admin"
6402 ]
6403 },
eff914dc
DM
6404 "protected" : 1,
6405 "proxyto" : "master",
6406 "returns" : {
6407 "type" : "null"
6408 }
6409 },
6410 "GET" : {
6bd70b95 6411 "allowtoken" : 1,
732d76e1 6412 "description" : "Read fetchmail user configuration.",
eff914dc
DM
6413 "method" : "GET",
6414 "name" : "read",
6415 "parameters" : {
6416 "additionalProperties" : 0,
6417 "properties" : {
732d76e1
DM
6418 "id" : {
6419 "description" : "Unique ID",
6420 "maxLength" : 16,
6421 "pattern" : "[A-Za-z0-9]+",
6422 "type" : "string"
eff914dc
DM
6423 }
6424 }
6425 },
732d76e1
DM
6426 "permissions" : {
6427 "check" : [
6428 "admin",
6429 "audit"
6430 ]
6431 },
6432 "protected" : 1,
eff914dc
DM
6433 "proxyto" : "master",
6434 "returns" : {
6435 "properties" : {
732d76e1
DM
6436 "enable" : {
6437 "default" : 0,
6438 "description" : "Flag to enable or disable polling.",
6439 "optional" : 1,
6440 "type" : "boolean"
6441 },
6442 "id" : {
6443 "description" : "Unique ID",
6444 "maxLength" : 16,
6445 "pattern" : "[A-Za-z0-9]+",
eff914dc
DM
6446 "type" : "string"
6447 },
732d76e1
DM
6448 "interval" : {
6449 "description" : "Only check this site every <interval> poll cycles. A poll cycle is 5 minutes.",
6450 "maximum" : 2016,
6451 "minimum" : 1,
6452 "optional" : 1,
6453 "type" : "integer"
6454 },
6455 "keep" : {
6456 "default" : 0,
6457 "description" : "Keep retrieved messages on the remote mailserver.",
6458 "optional" : 1,
6459 "type" : "boolean"
6460 },
6461 "pass" : {
6462 "description" : "The password used tfor server login.",
6463 "maxLength" : 64,
6464 "optional" : 1,
6465 "type" : "string"
6466 },
6467 "port" : {
6468 "description" : "Port number.",
6469 "maximum" : 65535,
6470 "minimum" : 1,
6471 "optional" : 1,
6472 "type" : "integer"
6473 },
6474 "protocol" : {
6475 "description" : "Specify the protocol to use when communicating with the remote mailserver",
6476 "enum" : [
6477 "pop3",
6478 "imap"
6479 ],
6480 "optional" : 1,
6481 "type" : "string"
6482 },
6483 "server" : {
6484 "description" : "Server address (IP or DNS name).",
6485 "format" : "address",
6486 "optional" : 1,
6487 "type" : "string"
6488 },
6489 "ssl" : {
6490 "default" : 0,
6491 "description" : "Use SSL.",
6492 "optional" : 1,
6493 "type" : "boolean"
6494 },
6495 "target" : {
6496 "description" : "The target email address (where to deliver fetched mails).",
6497 "maxLength" : 512,
6498 "minLength" : 3,
6499 "optional" : 1,
241ac83c 6500 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
732d76e1
DM
6501 "type" : "string"
6502 },
6503 "user" : {
6504 "description" : "The user identification to be used when logging in to the server",
6505 "maxLength" : 64,
6506 "minLength" : 1,
6507 "optional" : 1,
eff914dc
DM
6508 "type" : "string"
6509 }
6510 },
6511 "type" : "object"
6512 }
6513 },
6514 "PUT" : {
6bd70b95 6515 "allowtoken" : 1,
732d76e1 6516 "description" : "Update fetchmail user configuration.",
eff914dc
DM
6517 "method" : "PUT",
6518 "name" : "write",
6519 "parameters" : {
6520 "additionalProperties" : 0,
6521 "properties" : {
732d76e1
DM
6522 "enable" : {
6523 "default" : 0,
6524 "description" : "Flag to enable or disable polling.",
6525 "optional" : 1,
6526 "type" : "boolean",
6527 "typetext" : "<boolean>"
6528 },
6529 "id" : {
6530 "description" : "Unique ID",
6531 "maxLength" : 16,
6532 "pattern" : "[A-Za-z0-9]+",
6533 "type" : "string"
6534 },
6535 "interval" : {
6536 "description" : "Only check this site every <interval> poll cycles. A poll cycle is 5 minutes.",
6537 "maximum" : 2016,
6538 "minimum" : 1,
6539 "optional" : 1,
6540 "type" : "integer",
6541 "typetext" : "<integer> (1 - 2016)"
6542 },
6543 "keep" : {
6544 "default" : 0,
6545 "description" : "Keep retrieved messages on the remote mailserver.",
6546 "optional" : 1,
6547 "type" : "boolean",
6548 "typetext" : "<boolean>"
6549 },
6550 "pass" : {
6551 "description" : "The password used tfor server login.",
6552 "maxLength" : 64,
6553 "optional" : 1,
eff914dc
DM
6554 "type" : "string",
6555 "typetext" : "<string>"
6556 },
732d76e1
DM
6557 "port" : {
6558 "description" : "Port number.",
6559 "maximum" : 65535,
6560 "minimum" : 1,
6561 "optional" : 1,
6562 "type" : "integer",
6563 "typetext" : "<integer> (1 - 65535)"
6564 },
6565 "protocol" : {
6566 "description" : "Specify the protocol to use when communicating with the remote mailserver",
6567 "enum" : [
6568 "pop3",
6569 "imap"
6570 ],
6571 "optional" : 1,
6572 "type" : "string"
6573 },
6574 "server" : {
6575 "description" : "Server address (IP or DNS name).",
6576 "format" : "address",
6577 "optional" : 1,
6578 "type" : "string",
6579 "typetext" : "<string>"
6580 },
6581 "ssl" : {
6582 "default" : 0,
6583 "description" : "Use SSL.",
6584 "optional" : 1,
6585 "type" : "boolean",
6586 "typetext" : "<boolean>"
6587 },
6588 "target" : {
6589 "description" : "The target email address (where to deliver fetched mails).",
6590 "maxLength" : 512,
6591 "minLength" : 3,
6592 "optional" : 1,
241ac83c 6593 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
732d76e1
DM
6594 "type" : "string"
6595 },
6596 "user" : {
6597 "description" : "The user identification to be used when logging in to the server",
6598 "maxLength" : 64,
6599 "minLength" : 1,
6600 "optional" : 1,
eff914dc
DM
6601 "type" : "string",
6602 "typetext" : "<string>"
6603 }
6604 }
6605 },
732d76e1
DM
6606 "permissions" : {
6607 "check" : [
6608 "admin"
6609 ]
6610 },
eff914dc
DM
6611 "protected" : 1,
6612 "proxyto" : "master",
6613 "returns" : {
6614 "type" : "null"
6615 }
6616 }
6617 },
6618 "leaf" : 1,
732d76e1
DM
6619 "path" : "/config/fetchmail/{id}",
6620 "text" : "{id}"
eff914dc
DM
6621 }
6622 ],
6623 "info" : {
6624 "GET" : {
6bd70b95 6625 "allowtoken" : 1,
732d76e1 6626 "description" : "List fetchmail users.",
eff914dc
DM
6627 "method" : "GET",
6628 "name" : "index",
6629 "parameters" : {
6630 "additionalProperties" : 0
6631 },
732d76e1
DM
6632 "permissions" : {
6633 "check" : [
6634 "admin",
6635 "audit"
6636 ]
6637 },
6638 "protected" : 1,
eff914dc
DM
6639 "proxyto" : "master",
6640 "returns" : {
6641 "items" : {
6642 "properties" : {
732d76e1
DM
6643 "enable" : {
6644 "default" : 0,
6645 "description" : "Flag to enable or disable polling.",
6646 "optional" : 1,
6647 "type" : "boolean"
6648 },
6649 "id" : {
6650 "description" : "Unique ID",
6651 "maxLength" : 16,
6652 "pattern" : "[A-Za-z0-9]+",
eff914dc
DM
6653 "type" : "string"
6654 },
732d76e1
DM
6655 "interval" : {
6656 "description" : "Only check this site every <interval> poll cycles. A poll cycle is 5 minutes.",
6657 "maximum" : 2016,
6658 "minimum" : 1,
6659 "optional" : 1,
6660 "type" : "integer"
6661 },
6662 "keep" : {
6663 "default" : 0,
6664 "description" : "Keep retrieved messages on the remote mailserver.",
6665 "optional" : 1,
6666 "type" : "boolean"
6667 },
6668 "pass" : {
6669 "description" : "The password used tfor server login.",
6670 "maxLength" : 64,
6671 "optional" : 1,
6672 "type" : "string"
6673 },
6674 "port" : {
6675 "description" : "Port number.",
6676 "maximum" : 65535,
6677 "minimum" : 1,
6678 "optional" : 1,
6679 "type" : "integer"
6680 },
6681 "protocol" : {
6682 "description" : "Specify the protocol to use when communicating with the remote mailserver",
6683 "enum" : [
6684 "pop3",
6685 "imap"
6686 ],
6687 "optional" : 1,
6688 "type" : "string"
6689 },
6690 "server" : {
6691 "description" : "Server address (IP or DNS name).",
6692 "format" : "address",
6693 "optional" : 1,
6694 "type" : "string"
6695 },
6696 "ssl" : {
6697 "default" : 0,
6698 "description" : "Use SSL.",
6699 "optional" : 1,
6700 "type" : "boolean"
6701 },
6702 "target" : {
6703 "description" : "The target email address (where to deliver fetched mails).",
6704 "maxLength" : 512,
6705 "minLength" : 3,
6706 "optional" : 1,
241ac83c 6707 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
732d76e1
DM
6708 "type" : "string"
6709 },
6710 "user" : {
6711 "description" : "The user identification to be used when logging in to the server",
6712 "maxLength" : 64,
6713 "minLength" : 1,
6714 "optional" : 1,
eff914dc
DM
6715 "type" : "string"
6716 }
6717 },
6718 "type" : "object"
6719 },
6720 "links" : [
6721 {
732d76e1 6722 "href" : "{id}",
eff914dc
DM
6723 "rel" : "child"
6724 }
6725 ],
6726 "type" : "array"
6727 }
6728 },
6729 "POST" : {
6bd70b95 6730 "allowtoken" : 1,
732d76e1 6731 "description" : "Create fetchmail user configuration.",
eff914dc
DM
6732 "method" : "POST",
6733 "name" : "create",
6734 "parameters" : {
6735 "additionalProperties" : 0,
6736 "properties" : {
732d76e1
DM
6737 "enable" : {
6738 "default" : 0,
6739 "description" : "Flag to enable or disable polling.",
6740 "optional" : 1,
6741 "type" : "boolean",
6742 "typetext" : "<boolean>"
6743 },
6744 "interval" : {
6745 "description" : "Only check this site every <interval> poll cycles. A poll cycle is 5 minutes.",
6746 "maximum" : 2016,
6747 "minimum" : 1,
6748 "optional" : 1,
6749 "type" : "integer",
6750 "typetext" : "<integer> (1 - 2016)"
6751 },
6752 "keep" : {
6753 "default" : 0,
6754 "description" : "Keep retrieved messages on the remote mailserver.",
eff914dc 6755 "optional" : 1,
732d76e1
DM
6756 "type" : "boolean",
6757 "typetext" : "<boolean>"
6758 },
6759 "pass" : {
6760 "description" : "The password used tfor server login.",
6761 "maxLength" : 64,
eff914dc
DM
6762 "type" : "string",
6763 "typetext" : "<string>"
6764 },
732d76e1
DM
6765 "port" : {
6766 "description" : "Port number.",
6767 "maximum" : 65535,
6768 "minimum" : 1,
6769 "optional" : 1,
6770 "type" : "integer",
6771 "typetext" : "<integer> (1 - 65535)"
6772 },
6773 "protocol" : {
6774 "description" : "Specify the protocol to use when communicating with the remote mailserver",
6775 "enum" : [
6776 "pop3",
6777 "imap"
6778 ],
6779 "type" : "string"
6780 },
6781 "server" : {
6782 "description" : "Server address (IP or DNS name).",
6783 "format" : "address",
6784 "type" : "string",
6785 "typetext" : "<string>"
6786 },
6787 "ssl" : {
6788 "default" : 0,
6789 "description" : "Use SSL.",
6790 "optional" : 1,
6791 "type" : "boolean",
6792 "typetext" : "<boolean>"
6793 },
6794 "target" : {
6795 "description" : "The target email address (where to deliver fetched mails).",
6796 "maxLength" : 512,
6797 "minLength" : 3,
241ac83c 6798 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
732d76e1
DM
6799 "type" : "string"
6800 },
6801 "user" : {
6802 "description" : "The user identification to be used when logging in to the server",
6803 "maxLength" : 64,
6804 "minLength" : 1,
eff914dc
DM
6805 "type" : "string",
6806 "typetext" : "<string>"
6807 }
6808 }
6809 },
732d76e1
DM
6810 "permissions" : {
6811 "check" : [
6812 "admin"
6813 ]
6814 },
eff914dc
DM
6815 "protected" : 1,
6816 "proxyto" : "master",
6817 "returns" : {
732d76e1
DM
6818 "description" : "Unique ID",
6819 "maxLength" : 16,
6820 "pattern" : "[A-Za-z0-9]+",
6821 "type" : "string"
eff914dc
DM
6822 }
6823 }
6824 },
6825 "leaf" : 0,
732d76e1
DM
6826 "path" : "/config/fetchmail",
6827 "text" : "fetchmail"
eff914dc
DM
6828 },
6829 {
6830 "children" : [
6831 {
6832 "info" : {
6833 "DELETE" : {
6bd70b95 6834 "allowtoken" : 1,
eff914dc
DM
6835 "description" : "Delete a transport map entry",
6836 "method" : "DELETE",
6837 "name" : "delete",
6838 "parameters" : {
6839 "additionalProperties" : 0,
6840 "properties" : {
6841 "domain" : {
6842 "description" : "Domain name.",
f225b3b4 6843 "format" : "transport-domain-or-email",
eff914dc
DM
6844 "type" : "string",
6845 "typetext" : "<string>"
6846 }
6847 }
6848 },
732d76e1
DM
6849 "permissions" : {
6850 "check" : [
6851 "admin"
6852 ]
6853 },
eff914dc
DM
6854 "protected" : 1,
6855 "proxyto" : "master",
6856 "returns" : {
6857 "type" : "null"
6858 }
6859 },
6860 "GET" : {
6bd70b95 6861 "allowtoken" : 1,
eff914dc
DM
6862 "description" : "Read transport map entry.",
6863 "method" : "GET",
6864 "name" : "read",
6865 "parameters" : {
6866 "additionalProperties" : 0,
6867 "properties" : {
6868 "domain" : {
6869 "description" : "Domain name.",
f225b3b4 6870 "format" : "transport-domain-or-email",
eff914dc
DM
6871 "type" : "string",
6872 "typetext" : "<string>"
6873 }
6874 }
6875 },
732d76e1
DM
6876 "permissions" : {
6877 "check" : [
6878 "admin",
6879 "audit"
6880 ]
6881 },
eff914dc
DM
6882 "proxyto" : "master",
6883 "returns" : {
6884 "properties" : {
6885 "comment" : {
6886 "type" : "string"
6887 },
6888 "domain" : {
6889 "type" : "string"
410dc2c9 6890 },
eff914dc
DM
6891 "host" : {
6892 "type" : "string"
6893 },
6894 "port" : {
6895 "type" : "integer"
6896 },
6bd70b95
TL
6897 "protocol" : {
6898 "type" : "string"
6899 },
eff914dc
DM
6900 "use_mx" : {
6901 "type" : "boolean"
6902 }
6903 },
6904 "type" : "object"
6905 }
6906 },
6907 "PUT" : {
6bd70b95 6908 "allowtoken" : 1,
eff914dc
DM
6909 "description" : "Update transport map entry.",
6910 "method" : "PUT",
6911 "name" : "write",
6912 "parameters" : {
6913 "additionalProperties" : 0,
6914 "properties" : {
6915 "comment" : {
6916 "description" : "Comment.",
410dc2c9
DM
6917 "optional" : 1,
6918 "type" : "string",
6919 "typetext" : "<string>"
6920 },
eff914dc
DM
6921 "domain" : {
6922 "description" : "Domain name.",
f225b3b4 6923 "format" : "transport-domain-or-email",
410dc2c9
DM
6924 "type" : "string",
6925 "typetext" : "<string>"
6926 },
eff914dc
DM
6927 "host" : {
6928 "description" : "Target host (name or IP address).",
6929 "format" : "address",
410dc2c9
DM
6930 "optional" : 1,
6931 "type" : "string",
6932 "typetext" : "<string>"
6933 },
410dc2c9 6934 "port" : {
6bd70b95 6935 "description" : "Transport port.",
410dc2c9
DM
6936 "maximum" : 65535,
6937 "minimum" : 1,
6938 "optional" : 1,
6939 "type" : "integer",
6940 "typetext" : "<integer> (1 - 65535)"
6941 },
6bd70b95
TL
6942 "protocol" : {
6943 "default" : "smtp",
6944 "description" : "Transport protocol.",
6945 "enum" : [
6946 "smtp",
6947 "lmtp"
6948 ],
6949 "optional" : 1,
6950 "type" : "string"
6951 },
eff914dc 6952 "use_mx" : {
6bd70b95 6953 "description" : "Enable MX lookups (SMTP).",
410dc2c9 6954 "optional" : 1,
eff914dc
DM
6955 "type" : "boolean",
6956 "typetext" : "<boolean>"
410dc2c9 6957 }
eff914dc 6958 }
410dc2c9 6959 },
732d76e1
DM
6960 "permissions" : {
6961 "check" : [
6962 "admin"
6963 ]
6964 },
410dc2c9
DM
6965 "protected" : 1,
6966 "proxyto" : "master",
6967 "returns" : {
6968 "type" : "null"
6969 }
6970 }
6971 },
6972 "leaf" : 1,
eff914dc
DM
6973 "path" : "/config/transport/{domain}",
6974 "text" : "{domain}"
410dc2c9
DM
6975 }
6976 ],
6977 "info" : {
6978 "GET" : {
6bd70b95 6979 "allowtoken" : 1,
eff914dc 6980 "description" : "List transport map entries.",
410dc2c9
DM
6981 "method" : "GET",
6982 "name" : "index",
6983 "parameters" : {
6984 "additionalProperties" : 0
6985 },
732d76e1
DM
6986 "permissions" : {
6987 "check" : [
6988 "admin",
6989 "audit"
6990 ]
6991 },
410dc2c9
DM
6992 "proxyto" : "master",
6993 "returns" : {
6994 "items" : {
6995 "properties" : {
eff914dc 6996 "comment" : {
410dc2c9
DM
6997 "type" : "string"
6998 },
eff914dc 6999 "domain" : {
410dc2c9
DM
7000 "type" : "string"
7001 },
eff914dc 7002 "host" : {
410dc2c9 7003 "type" : "string"
eff914dc
DM
7004 },
7005 "port" : {
7006 "type" : "integer"
7007 },
6bd70b95
TL
7008 "protocol" : {
7009 "type" : "string"
7010 },
eff914dc
DM
7011 "use_mx" : {
7012 "type" : "boolean"
410dc2c9
DM
7013 }
7014 },
7015 "type" : "object"
7016 },
7017 "links" : [
7018 {
c061d61d 7019 "href" : "{domain}",
410dc2c9
DM
7020 "rel" : "child"
7021 }
7022 ],
7023 "type" : "array"
7024 }
7025 },
7026 "POST" : {
6bd70b95 7027 "allowtoken" : 1,
eff914dc 7028 "description" : "Add transport map entry.",
410dc2c9
DM
7029 "method" : "POST",
7030 "name" : "create",
7031 "parameters" : {
7032 "additionalProperties" : 0,
7033 "properties" : {
eff914dc
DM
7034 "comment" : {
7035 "description" : "Comment.",
410dc2c9
DM
7036 "optional" : 1,
7037 "type" : "string",
7038 "typetext" : "<string>"
7039 },
eff914dc
DM
7040 "domain" : {
7041 "description" : "Domain name.",
f225b3b4 7042 "format" : "transport-domain-or-email",
410dc2c9
DM
7043 "type" : "string",
7044 "typetext" : "<string>"
7045 },
eff914dc
DM
7046 "host" : {
7047 "description" : "Target host (name or IP address).",
7048 "format" : "address",
410dc2c9
DM
7049 "type" : "string",
7050 "typetext" : "<string>"
7051 },
410dc2c9 7052 "port" : {
eff914dc 7053 "default" : 25,
6bd70b95 7054 "description" : "Transport port.",
410dc2c9
DM
7055 "maximum" : 65535,
7056 "minimum" : 1,
7057 "optional" : 1,
7058 "type" : "integer",
7059 "typetext" : "<integer> (1 - 65535)"
7060 },
6bd70b95
TL
7061 "protocol" : {
7062 "default" : "smtp",
7063 "description" : "Transport protocol.",
7064 "enum" : [
7065 "smtp",
7066 "lmtp"
7067 ],
7068 "optional" : 1,
7069 "type" : "string"
7070 },
eff914dc
DM
7071 "use_mx" : {
7072 "default" : 1,
6bd70b95 7073 "description" : "Enable MX lookups (SMTP).",
410dc2c9 7074 "optional" : 1,
eff914dc
DM
7075 "type" : "boolean",
7076 "typetext" : "<boolean>"
410dc2c9 7077 }
eff914dc 7078 }
410dc2c9 7079 },
732d76e1
DM
7080 "permissions" : {
7081 "check" : [
7082 "admin"
7083 ]
7084 },
410dc2c9
DM
7085 "protected" : 1,
7086 "proxyto" : "master",
7087 "returns" : {
7088 "type" : "null"
7089 }
7090 }
7091 },
7092 "leaf" : 0,
eff914dc
DM
7093 "path" : "/config/transport",
7094 "text" : "transport"
410dc2c9
DM
7095 },
7096 {
7097 "children" : [
7098 {
7099 "info" : {
7100 "DELETE" : {
6bd70b95 7101 "allowtoken" : 1,
eff914dc 7102 "description" : "Delete a truster network",
410dc2c9
DM
7103 "method" : "DELETE",
7104 "name" : "delete",
7105 "parameters" : {
7106 "additionalProperties" : 0,
7107 "properties" : {
eff914dc
DM
7108 "cidr" : {
7109 "description" : "IPv4 or IPv6 network in CIDR notation.",
7110 "format" : "CIDR",
7111 "type" : "string",
7112 "typetext" : "<string>"
7113 }
7114 }
7115 },
732d76e1
DM
7116 "permissions" : {
7117 "check" : [
7118 "admin"
7119 ]
7120 },
eff914dc
DM
7121 "protected" : 1,
7122 "proxyto" : "master",
7123 "returns" : {
7124 "type" : "null"
7125 }
7126 },
7127 "GET" : {
6bd70b95 7128 "allowtoken" : 1,
eff914dc
DM
7129 "description" : "Read trusted network data (comment).",
7130 "method" : "GET",
7131 "name" : "read",
7132 "parameters" : {
7133 "additionalProperties" : 0,
7134 "properties" : {
7135 "cidr" : {
7136 "description" : "IPv4 or IPv6 network in CIDR notation.",
7137 "format" : "CIDR",
7138 "type" : "string",
7139 "typetext" : "<string>"
7140 }
7141 }
7142 },
732d76e1
DM
7143 "permissions" : {
7144 "check" : [
7145 "admin",
7146 "audit"
7147 ]
7148 },
eff914dc
DM
7149 "proxyto" : "master",
7150 "returns" : {
7151 "properties" : {
7152 "cidr" : {
7153 "type" : "string"
7154 },
7155 "comment" : {
7156 "type" : "string"
7157 }
7158 },
7159 "type" : "object"
7160 }
7161 },
7162 "PUT" : {
6bd70b95 7163 "allowtoken" : 1,
eff914dc
DM
7164 "description" : "Update trusted data (comment).",
7165 "method" : "PUT",
7166 "name" : "write",
7167 "parameters" : {
7168 "additionalProperties" : 0,
7169 "properties" : {
7170 "cidr" : {
7171 "description" : "IPv4 or IPv6 network in CIDR notation.",
7172 "type" : "string",
7173 "typetext" : "<string>"
7174 },
7175 "comment" : {
7176 "description" : "Comment.",
410dc2c9
DM
7177 "type" : "string",
7178 "typetext" : "<string>"
7179 }
7180 }
7181 },
732d76e1
DM
7182 "permissions" : {
7183 "check" : [
7184 "admin"
7185 ]
7186 },
410dc2c9
DM
7187 "protected" : 1,
7188 "proxyto" : "master",
7189 "returns" : {
7190 "type" : "null"
7191 }
7192 }
7193 },
7194 "leaf" : 1,
eff914dc
DM
7195 "path" : "/config/mynetworks/{cidr}",
7196 "text" : "{cidr}"
410dc2c9
DM
7197 }
7198 ],
7199 "info" : {
7200 "GET" : {
6bd70b95 7201 "allowtoken" : 1,
eff914dc 7202 "description" : "List of trusted networks from where SMTP clients are allowed to relay mail through Proxmox Mail Gateway.",
410dc2c9
DM
7203 "method" : "GET",
7204 "name" : "index",
7205 "parameters" : {
7206 "additionalProperties" : 0
7207 },
732d76e1
DM
7208 "permissions" : {
7209 "check" : [
7210 "admin",
7211 "audit"
7212 ]
7213 },
410dc2c9
DM
7214 "proxyto" : "master",
7215 "returns" : {
7216 "items" : {
7217 "properties" : {
eff914dc 7218 "cidr" : {
410dc2c9
DM
7219 "type" : "string"
7220 }
7221 },
7222 "type" : "object"
7223 },
7224 "links" : [
7225 {
c061d61d 7226 "href" : "{cidr}",
410dc2c9
DM
7227 "rel" : "child"
7228 }
7229 ],
7230 "type" : "array"
7231 }
7232 },
7233 "POST" : {
6bd70b95 7234 "allowtoken" : 1,
eff914dc 7235 "description" : "Add a trusted network.",
410dc2c9
DM
7236 "method" : "POST",
7237 "name" : "create",
7238 "parameters" : {
7239 "additionalProperties" : 0,
7240 "properties" : {
eff914dc
DM
7241 "cidr" : {
7242 "description" : "IPv4 or IPv6 network in CIDR notation.",
7243 "format" : "CIDR",
7244 "type" : "string",
7245 "typetext" : "<string>"
7246 },
7247 "comment" : {
7248 "description" : "Comment.",
7249 "optional" : 1,
410dc2c9
DM
7250 "type" : "string",
7251 "typetext" : "<string>"
7252 }
7253 }
7254 },
732d76e1
DM
7255 "permissions" : {
7256 "check" : [
7257 "admin"
7258 ]
7259 },
410dc2c9
DM
7260 "protected" : 1,
7261 "proxyto" : "master",
7262 "returns" : {
7263 "type" : "null"
7264 }
7265 }
7266 },
7267 "leaf" : 0,
eff914dc
DM
7268 "path" : "/config/mynetworks",
7269 "text" : "mynetworks"
410dc2c9
DM
7270 },
7271 {
d7cd791b
DM
7272 "children" : [
7273 {
7274 "info" : {
7275 "GET" : {
6bd70b95 7276 "allowtoken" : 1,
d7cd791b
DM
7277 "description" : "Cluster node index.",
7278 "method" : "GET",
7279 "name" : "nodes",
7280 "parameters" : {
7281 "additionalProperties" : 0
7282 },
7283 "permissions" : {
7284 "check" : [
bb6e6e0d
DM
7285 "admin",
7286 "qmanager",
7287 "audit"
d7cd791b
DM
7288 ]
7289 },
7290 "returns" : {
7291 "items" : {
7292 "properties" : {
7293 "cid" : {
7294 "type" : "integer"
7295 },
7296 "fingerprint" : {
7297 "type" : "string"
7298 },
7299 "hostrsapubkey" : {
7300 "type" : "string"
7301 },
7302 "ip" : {
7303 "type" : "string"
7304 },
7305 "name" : {
7306 "type" : "string"
7307 },
7308 "rootrsapubkey" : {
7309 "type" : "string"
7310 },
7311 "type" : {
7312 "type" : "string"
7313 }
7314 },
7315 "type" : "object"
7316 },
d7cd791b
DM
7317 "type" : "array"
7318 }
7319 },
7320 "POST" : {
6bd70b95 7321 "allowtoken" : 1,
d7cd791b
DM
7322 "description" : "Add an node to the cluster config.",
7323 "method" : "POST",
7324 "name" : "add_node",
7325 "parameters" : {
7326 "additionalProperties" : 0,
7327 "properties" : {
7328 "fingerprint" : {
7329 "description" : "SSL certificate fingerprint.",
7330 "optional" : 0,
7331 "pattern" : "^(:?[A-Z0-9][A-Z0-9]:){31}[A-Z0-9][A-Z0-9]$",
7332 "type" : "string"
7333 },
7334 "hostrsapubkey" : {
7335 "description" : "Public SSH RSA key for the host.",
7336 "optional" : 0,
7337 "pattern" : "^[A-Za-z0-9\\.\\/\\+]{200,}$",
7338 "type" : "string"
7339 },
7340 "ip" : {
7341 "description" : "IP address.",
7342 "format" : "ip",
7343 "optional" : 0,
7344 "type" : "string",
7345 "typetext" : "<string>"
7346 },
7347 "maxcid" : {
7348 "description" : "Maximum used cluster node ID (used internally, do not modify).",
7349 "minimum" : 1,
7350 "optional" : 1,
7351 "type" : "integer",
7352 "typetext" : "<integer> (1 - N)"
7353 },
7354 "name" : {
7355 "description" : "Node name.",
7356 "format" : "pve-node",
7357 "optional" : 0,
7358 "type" : "string",
7359 "typetext" : "<string>"
7360 },
7361 "rootrsapubkey" : {
7362 "description" : "Public SSH RSA key for the root user.",
7363 "optional" : 0,
7364 "pattern" : "^[A-Za-z0-9\\.\\/\\+]{200,}$",
7365 "type" : "string"
7366 }
7367 },
7368 "type" : "object"
7369 },
7370 "protected" : 1,
7371 "proxyto" : "master",
7372 "returns" : {
7373 "description" : "Returns the resulting node list.",
7374 "items" : {
7375 "properties" : {
7376 "cid" : {
7377 "type" : "integer"
7378 }
7379 },
7380 "type" : "object"
7381 },
7382 "type" : "array"
7383 }
7384 }
7385 },
7386 "leaf" : 1,
7387 "path" : "/config/cluster/nodes",
7388 "text" : "nodes"
7389 },
7390 {
7391 "info" : {
7392 "GET" : {
6bd70b95 7393 "allowtoken" : 1,
d7cd791b
DM
7394 "description" : "Cluster node status.",
7395 "method" : "GET",
7396 "name" : "status",
7397 "parameters" : {
bb6e6e0d
DM
7398 "additionalProperties" : 0,
7399 "properties" : {
7400 "list_single_node" : {
7401 "default" : 0,
7402 "description" : "List local node if there is no cluster defined. Please note that RSA keys and fingerprint are not valid in that case.",
7403 "optional" : 1,
7404 "type" : "boolean",
7405 "typetext" : "<boolean>"
7406 }
7407 }
d7cd791b
DM
7408 },
7409 "permissions" : {
7410 "check" : [
bb6e6e0d
DM
7411 "admin",
7412 "qmanager",
7413 "audit"
d7cd791b
DM
7414 ]
7415 },
7416 "returns" : {
7417 "items" : {
7418 "properties" : {
7419 "cid" : {
7420 "type" : "integer"
7421 },
7422 "fingerprint" : {
7423 "type" : "string"
7424 },
7425 "hostrsapubkey" : {
7426 "type" : "string"
7427 },
7428 "ip" : {
7429 "type" : "string"
7430 },
7431 "name" : {
7432 "type" : "string"
7433 },
7434 "rootrsapubkey" : {
7435 "type" : "string"
7436 },
7437 "type" : {
7438 "type" : "string"
7439 }
7440 },
7441 "type" : "object"
7442 },
7443 "links" : [
7444 {
7445 "href" : "{cid}",
7446 "rel" : "child"
7447 }
7448 ],
7449 "type" : "array"
7450 }
7451 }
7452 },
7453 "leaf" : 1,
7454 "path" : "/config/cluster/status",
7455 "text" : "status"
7456 },
7457 {
7458 "info" : {
7459 "POST" : {
6bd70b95 7460 "allowtoken" : 1,
d7cd791b
DM
7461 "description" : "Create initial cluster config with current node as master.",
7462 "method" : "POST",
7463 "name" : "create",
7464 "parameters" : {
7465 "additionalProperties" : 0
7466 },
7467 "protected" : 1,
7468 "returns" : {
7469 "type" : "string"
7470 }
7471 }
7472 },
7473 "leaf" : 1,
7474 "path" : "/config/cluster/create",
7475 "text" : "create"
7476 },
7477 {
7478 "info" : {
7479 "POST" : {
6bd70b95 7480 "allowtoken" : 1,
d7cd791b
DM
7481 "description" : "Join local node to an existing cluster.",
7482 "method" : "POST",
7483 "name" : "join",
7484 "parameters" : {
7485 "additionalProperties" : 0,
7486 "properties" : {
7487 "fingerprint" : {
7488 "description" : "SSL certificate fingerprint.",
7489 "pattern" : "^(:?[A-Z0-9][A-Z0-9]:){31}[A-Z0-9][A-Z0-9]$",
7490 "type" : "string"
7491 },
7492 "master_ip" : {
7493 "description" : "IP address.",
7494 "format" : "ip",
7495 "type" : "string",
7496 "typetext" : "<string>"
7497 },
7498 "password" : {
7499 "description" : "Superuser password.",
7500 "maxLength" : 128,
7501 "type" : "string",
7502 "typetext" : "<string>"
7503 }
7504 }
7505 },
7506 "protected" : 1,
7507 "returns" : {
7508 "type" : "string"
7509 }
7510 }
7511 },
7512 "leaf" : 1,
7513 "path" : "/config/cluster/join",
7514 "text" : "join"
7515 }
7516 ],
410dc2c9
DM
7517 "info" : {
7518 "GET" : {
6bd70b95 7519 "allowtoken" : 1,
d7cd791b 7520 "description" : "Directory index.",
410dc2c9
DM
7521 "method" : "GET",
7522 "name" : "index",
7523 "parameters" : {
7524 "additionalProperties" : 0
7525 },
d7cd791b
DM
7526 "permissions" : {
7527 "user" : "all"
7528 },
410dc2c9
DM
7529 "returns" : {
7530 "items" : {
d7cd791b 7531 "properties" : {},
410dc2c9
DM
7532 "type" : "object"
7533 },
7534 "links" : [
7535 {
d7cd791b 7536 "href" : "{name}",
410dc2c9
DM
7537 "rel" : "child"
7538 }
7539 ],
7540 "type" : "array"
7541 }
7542 }
7543 },
d7cd791b 7544 "leaf" : 0,
410dc2c9
DM
7545 "path" : "/config/cluster",
7546 "text" : "cluster"
7547 },
9fda36b0
DM
7548 {
7549 "info" : {
7550 "GET" : {
6bd70b95 7551 "allowtoken" : 1,
9fda36b0
DM
7552 "description" : "Get Mime Types List",
7553 "method" : "GET",
7554 "name" : "index",
7555 "parameters" : {
7556 "additionalProperties" : 0
7557 },
7558 "returns" : {
7559 "items" : {
7560 "properties" : {
7561 "mimetype" : {
7562 "type" : "string"
7563 },
7564 "text" : {
7565 "type" : "string"
7566 }
7567 },
7568 "type" : "object"
7569 },
7570 "type" : "array"
7571 }
7572 }
7573 },
7574 "leaf" : 1,
7575 "path" : "/config/mimetypes",
7576 "text" : "mimetypes"
7577 },
241ac83c
TL
7578 {
7579 "children" : [
7580 {
7581 "info" : {
7582 "DELETE" : {
6bd70b95 7583 "allowtoken" : 1,
241ac83c
TL
7584 "description" : "Delete a tls_policy entry",
7585 "method" : "DELETE",
7586 "name" : "delete",
7587 "parameters" : {
7588 "additionalProperties" : 0,
7589 "properties" : {
7590 "domain" : {
7591 "description" : "Domain name.",
7592 "format" : "transport-domain",
7593 "type" : "string",
7594 "typetext" : "<string>"
7595 }
7596 }
7597 },
7598 "permissions" : {
7599 "check" : [
7600 "admin"
7601 ]
7602 },
7603 "protected" : 1,
7604 "proxyto" : "master",
7605 "returns" : {
7606 "type" : "null"
7607 }
7608 },
7609 "GET" : {
6bd70b95 7610 "allowtoken" : 1,
241ac83c
TL
7611 "description" : "Read tls_policy entry.",
7612 "method" : "GET",
7613 "name" : "read",
7614 "parameters" : {
7615 "additionalProperties" : 0,
7616 "properties" : {
7617 "domain" : {
7618 "description" : "Domain name.",
7619 "format" : "transport-domain",
7620 "type" : "string",
7621 "typetext" : "<string>"
7622 }
7623 }
7624 },
7625 "permissions" : {
7626 "check" : [
7627 "admin",
7628 "audit"
7629 ]
7630 },
7631 "proxyto" : "master",
7632 "returns" : {
7633 "properties" : {
7634 "domain" : {
7635 "format" : "transport-domain",
7636 "type" : "string"
7637 },
7638 "policy" : {
7639 "format" : "tls-policy",
7640 "type" : "string"
7641 }
7642 },
7643 "type" : "object"
7644 }
7645 },
7646 "PUT" : {
6bd70b95 7647 "allowtoken" : 1,
241ac83c
TL
7648 "description" : "Update tls_policy entry.",
7649 "method" : "PUT",
7650 "name" : "write",
7651 "parameters" : {
7652 "additionalProperties" : 0,
7653 "properties" : {
7654 "domain" : {
7655 "description" : "Domain name.",
7656 "format" : "transport-domain",
7657 "type" : "string",
7658 "typetext" : "<string>"
7659 },
7660 "policy" : {
7661 "description" : "TLS policy",
7662 "format" : "tls-policy-strict",
7663 "type" : "string",
7664 "typetext" : "<string>"
7665 }
7666 }
7667 },
7668 "permissions" : {
7669 "check" : [
7670 "admin"
7671 ]
7672 },
7673 "protected" : 1,
7674 "proxyto" : "master",
7675 "returns" : {
7676 "type" : "null"
7677 }
7678 }
7679 },
7680 "leaf" : 1,
7681 "path" : "/config/tlspolicy/{domain}",
7682 "text" : "{domain}"
7683 }
7684 ],
7685 "info" : {
7686 "GET" : {
6bd70b95 7687 "allowtoken" : 1,
241ac83c
TL
7688 "description" : "List tls_policy entries.",
7689 "method" : "GET",
7690 "name" : "index",
7691 "parameters" : {
7692 "additionalProperties" : 0
7693 },
7694 "permissions" : {
7695 "check" : [
7696 "admin",
7697 "audit"
7698 ]
7699 },
7700 "proxyto" : "master",
7701 "returns" : {
7702 "items" : {
7703 "properties" : {
7704 "domain" : {
7705 "format" : "transport-domain",
7706 "type" : "string"
7707 },
7708 "policy" : {
7709 "format" : "tls-policy",
7710 "type" : "string"
7711 }
7712 },
7713 "type" : "object"
7714 },
7715 "links" : [
7716 {
7717 "href" : "{domain}",
7718 "rel" : "child"
7719 }
7720 ],
7721 "type" : "array"
7722 }
7723 },
7724 "POST" : {
6bd70b95 7725 "allowtoken" : 1,
241ac83c
TL
7726 "description" : "Add tls_policy entry.",
7727 "method" : "POST",
7728 "name" : "create",
7729 "parameters" : {
7730 "additionalProperties" : 0,
7731 "properties" : {
7732 "domain" : {
7733 "description" : "Domain name.",
7734 "format" : "transport-domain",
7735 "type" : "string",
7736 "typetext" : "<string>"
7737 },
7738 "policy" : {
7739 "description" : "TLS policy",
7740 "format" : "tls-policy-strict",
7741 "type" : "string",
7742 "typetext" : "<string>"
7743 }
7744 }
7745 },
7746 "permissions" : {
7747 "check" : [
7748 "admin"
7749 ]
7750 },
7751 "protected" : 1,
7752 "proxyto" : "master",
7753 "returns" : {
7754 "type" : "null"
7755 }
7756 }
7757 },
7758 "leaf" : 0,
7759 "path" : "/config/tlspolicy",
7760 "text" : "tlspolicy"
7761 },
410dc2c9 7762 {
d210277a
TL
7763 "children" : [
7764 {
7765 "children" : [
7766 {
7767 "info" : {
7768 "DELETE" : {
6bd70b95 7769 "allowtoken" : 1,
d210277a
TL
7770 "description" : "Delete a DKIM-sign domain",
7771 "method" : "DELETE",
7772 "name" : "delete",
7773 "parameters" : {
7774 "additionalProperties" : 0,
7775 "properties" : {
7776 "domain" : {
7777 "description" : "Domain name.",
7778 "format" : "transport-domain",
7779 "type" : "string",
7780 "typetext" : "<string>"
7781 }
7782 }
7783 },
7784 "permissions" : {
7785 "check" : [
7786 "admin"
7787 ]
7788 },
7789 "protected" : 1,
7790 "proxyto" : "master",
7791 "returns" : {
7792 "type" : "null"
7793 }
7794 },
7795 "GET" : {
6bd70b95 7796 "allowtoken" : 1,
d210277a
TL
7797 "description" : "Read Domain data (comment).",
7798 "method" : "GET",
7799 "name" : "read",
7800 "parameters" : {
7801 "additionalProperties" : 0,
7802 "properties" : {
7803 "domain" : {
7804 "description" : "Domain name.",
7805 "format" : "transport-domain",
7806 "type" : "string",
7807 "typetext" : "<string>"
7808 }
7809 }
7810 },
7811 "permissions" : {
7812 "check" : [
7813 "admin",
7814 "audit"
7815 ]
7816 },
7817 "proxyto" : "master",
7818 "returns" : {
7819 "properties" : {
7820 "comment" : {
7821 "type" : "string"
7822 },
7823 "domain" : {
7824 "type" : "string"
7825 }
7826 },
7827 "type" : "object"
7828 }
7829 },
7830 "PUT" : {
6bd70b95 7831 "allowtoken" : 1,
d210277a
TL
7832 "description" : "Update DKIM-sign domain data (comment).",
7833 "method" : "PUT",
7834 "name" : "write",
7835 "parameters" : {
7836 "additionalProperties" : 0,
7837 "properties" : {
7838 "comment" : {
7839 "description" : "Comment.",
7840 "type" : "string",
7841 "typetext" : "<string>"
7842 },
7843 "domain" : {
7844 "description" : "Domain name.",
7845 "format" : "transport-domain",
7846 "type" : "string",
7847 "typetext" : "<string>"
7848 }
7849 }
7850 },
7851 "permissions" : {
7852 "check" : [
7853 "admin"
7854 ]
7855 },
7856 "protected" : 1,
7857 "proxyto" : "master",
7858 "returns" : {
7859 "type" : "null"
7860 }
7861 }
7862 },
7863 "leaf" : 1,
7864 "path" : "/config/dkim/domains/{domain}",
7865 "text" : "{domain}"
7866 }
7867 ],
7868 "info" : {
7869 "GET" : {
6bd70b95 7870 "allowtoken" : 1,
d210277a
TL
7871 "description" : "List DKIM-sign domains.",
7872 "method" : "GET",
7873 "name" : "index",
7874 "parameters" : {
7875 "additionalProperties" : 0
7876 },
7877 "permissions" : {
7878 "check" : [
7879 "admin",
7880 "audit"
7881 ]
7882 },
7883 "proxyto" : "master",
7884 "returns" : {
7885 "items" : {
7886 "properties" : {
7887 "comment" : {
7888 "type" : "string"
7889 },
7890 "domain" : {
7891 "type" : "string"
7892 }
7893 },
7894 "type" : "object"
7895 },
7896 "links" : [
7897 {
7898 "href" : "{domain}",
7899 "rel" : "child"
7900 }
7901 ],
7902 "type" : "array"
7903 }
7904 },
7905 "POST" : {
6bd70b95 7906 "allowtoken" : 1,
d210277a
TL
7907 "description" : "Add DKIM-sign domain.",
7908 "method" : "POST",
7909 "name" : "create",
7910 "parameters" : {
7911 "additionalProperties" : 0,
7912 "properties" : {
7913 "comment" : {
7914 "description" : "Comment.",
7915 "optional" : 1,
7916 "type" : "string",
7917 "typetext" : "<string>"
7918 },
7919 "domain" : {
7920 "description" : "Domain name.",
7921 "format" : "transport-domain",
7922 "type" : "string",
7923 "typetext" : "<string>"
7924 }
7925 }
7926 },
7927 "permissions" : {
7928 "check" : [
7929 "admin"
7930 ]
7931 },
7932 "protected" : 1,
7933 "proxyto" : "master",
7934 "returns" : {
7935 "type" : "null"
7936 }
7937 }
7938 },
7939 "leaf" : 0,
7940 "path" : "/config/dkim/domains",
7941 "text" : "domains"
7942 },
7943 {
7944 "info" : {
7945 "GET" : {
6bd70b95 7946 "allowtoken" : 1,
d210277a
TL
7947 "description" : "Get the public key for the configured selector, prepared as DKIM TXT record",
7948 "method" : "GET",
7949 "name" : "get_selector_info",
7950 "parameters" : {
7951 "additionalProperties" : 0
7952 },
7953 "permissions" : {
7954 "check" : [
7955 "admin"
7956 ]
7957 },
7958 "protected" : 1,
7959 "proxyto" : "master",
7960 "returns" : {
7961 "properties" : {
7962 "keysize" : {
7963 "minimum" : 1024,
7964 "optional" : 1,
7965 "type" : "integer"
7966 },
7967 "record" : {
7968 "format" : "pmg-dkim-record",
7969 "optional" : 1,
7970 "type" : "string"
7971 },
7972 "selector" : {
7973 "format" : "dns-name",
7974 "optional" : 1,
7975 "type" : "string"
7976 }
7977 },
7978 "type" : "object"
7979 }
7980 },
7981 "POST" : {
6bd70b95 7982 "allowtoken" : 1,
d210277a
TL
7983 "description" : "Generate a new private key for selector. All future mail will be signed with the new key!",
7984 "method" : "POST",
7985 "name" : "set_selector",
7986 "parameters" : {
7987 "additionalProperties" : 0,
7988 "properties" : {
6bd70b95
TL
7989 "force" : {
7990 "description" : "Overwrite existing key",
7991 "optional" : 1,
7992 "type" : "boolean",
7993 "typetext" : "<boolean>"
7994 },
d210277a
TL
7995 "keysize" : {
7996 "description" : "Number of bits for the RSA-Key",
7997 "minimum" : 1024,
7998 "type" : "integer",
7999 "typetext" : "<integer> (1024 - N)"
8000 },
8001 "selector" : {
8002 "description" : "DKIM Selector",
8003 "format" : "dns-name",
8004 "type" : "string",
8005 "typetext" : "<string>"
8006 }
8007 }
8008 },
8009 "permissions" : {
8010 "check" : [
8011 "admin"
8012 ]
8013 },
8014 "protected" : 1,
8015 "proxyto" : "master",
8016 "returns" : {
8017 "type" : "null"
8018 }
8019 }
8020 },
8021 "leaf" : 1,
8022 "path" : "/config/dkim/selector",
8023 "text" : "selector"
6bd70b95
TL
8024 },
8025 {
8026 "info" : {
8027 "GET" : {
8028 "allowtoken" : 1,
8029 "description" : "Get a list of all existing selectors",
8030 "method" : "GET",
8031 "name" : "get_selector_list",
8032 "parameters" : {
8033 "additionalProperties" : 0
8034 },
8035 "permissions" : {
8036 "check" : [
8037 "admin"
8038 ]
8039 },
8040 "protected" : 1,
8041 "proxyto" : "master",
8042 "returns" : {
8043 "items" : {
8044 "properties" : {
8045 "selector" : {
8046 "format" : "dns-name",
8047 "type" : "string"
8048 }
8049 },
8050 "type" : "object"
8051 },
8052 "links" : [
8053 {
8054 "href" : "{selector}",
8055 "rel" : "child"
8056 }
8057 ],
8058 "type" : "array"
8059 }
8060 }
8061 },
8062 "leaf" : 1,
8063 "path" : "/config/dkim/selectors",
8064 "text" : "selectors"
d210277a
TL
8065 }
8066 ],
410dc2c9
DM
8067 "info" : {
8068 "GET" : {
6bd70b95 8069 "allowtoken" : 1,
d210277a 8070 "description" : "Directory index.",
410dc2c9 8071 "method" : "GET",
d210277a 8072 "name" : "index",
410dc2c9
DM
8073 "parameters" : {
8074 "additionalProperties" : 0
8075 },
410dc2c9 8076 "returns" : {
d210277a
TL
8077 "items" : {
8078 "properties" : {
8079 "section" : {
8080 "type" : "string"
8081 }
9fda36b0 8082 },
d210277a
TL
8083 "type" : "object"
8084 },
8085 "links" : [
8086 {
8087 "href" : "{section}",
8088 "rel" : "child"
8089 }
8090 ],
8091 "type" : "array"
8092 }
8093 }
8094 },
8095 "leaf" : 0,
8096 "path" : "/config/dkim",
8097 "text" : "dkim"
8098 },
8099 {
8100 "children" : [
8101 {
8102 "info" : {
8103 "DELETE" : {
6bd70b95 8104 "allowtoken" : 1,
d210277a
TL
8105 "description" : "Edit custom SpamAssassin score",
8106 "method" : "DELETE",
8107 "name" : "delete_score",
8108 "parameters" : {
8109 "additionalProperties" : 0,
8110 "properties" : {
8111 "digest" : {
8112 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
8113 "maxLength" : 40,
8114 "optional" : 1,
8115 "type" : "string",
8116 "typetext" : "<string>"
8117 },
8118 "name" : {
8119 "description" : "The name of the rule.",
8120 "pattern" : "[a-zA-Z\\_\\-\\.0-9]+",
8121 "type" : "string"
8122 }
8123 }
8124 },
8125 "protected" : 1,
8126 "proxyto" : "master",
8127 "returns" : {
8128 "type" : "null"
8129 }
8130 },
8131 "GET" : {
6bd70b95 8132 "allowtoken" : 1,
d210277a
TL
8133 "description" : "Get custom SpamAssassin score",
8134 "method" : "GET",
8135 "name" : "get_score",
8136 "parameters" : {
8137 "additionalProperties" : 0,
8138 "properties" : {
8139 "name" : {
8140 "description" : "The name of the rule.",
8141 "pattern" : "[a-zA-Z\\_\\-\\.0-9]+",
8142 "type" : "string"
8143 }
8144 }
8145 },
8146 "protected" : 1,
8147 "proxyto" : "master",
8148 "returns" : {
8149 "properties" : {
8150 "comment" : {
8151 "description" : "The Comment.",
8152 "optional" : 1,
8153 "type" : "string"
8154 },
8155 "name" : {
8156 "description" : "The name of the rule.",
8157 "pattern" : "[a-zA-Z\\_\\-\\.0-9]+",
8158 "type" : "string"
8159 },
8160 "score" : {
8161 "description" : "The score the rule should be valued at.",
8162 "type" : "number"
8163 }
8164 },
8165 "type" : "object"
8166 }
8167 },
8168 "PUT" : {
6bd70b95 8169 "allowtoken" : 1,
d210277a
TL
8170 "description" : "Edit custom SpamAssassin score",
8171 "method" : "PUT",
8172 "name" : "edit_score",
8173 "parameters" : {
8174 "additionalProperties" : 0,
8175 "properties" : {
8176 "comment" : {
8177 "description" : "The Comment.",
8178 "optional" : 1,
8179 "type" : "string",
8180 "typetext" : "<string>"
8181 },
8182 "digest" : {
8183 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
8184 "maxLength" : 40,
8185 "optional" : 1,
8186 "type" : "string",
8187 "typetext" : "<string>"
8188 },
8189 "name" : {
8190 "description" : "The name of the rule.",
8191 "pattern" : "[a-zA-Z\\_\\-\\.0-9]+",
8192 "type" : "string"
8193 },
8194 "score" : {
8195 "description" : "The score the rule should be valued at.",
8196 "type" : "number",
8197 "typetext" : "<number>"
8198 }
8199 }
8200 },
8201 "protected" : 1,
8202 "proxyto" : "master",
8203 "returns" : {
8204 "type" : "null"
8205 }
8206 }
8207 },
8208 "leaf" : 1,
8209 "path" : "/config/customscores/{name}",
8210 "text" : "{name}"
8211 }
8212 ],
8213 "info" : {
8214 "DELETE" : {
6bd70b95 8215 "allowtoken" : 1,
d210277a
TL
8216 "description" : "Revert custom score changes.",
8217 "method" : "DELETE",
8218 "name" : "revert_score_changes",
8219 "parameters" : {
8220 "additionalProperties" : 0
8221 },
8222 "permissions" : {
8223 "check" : [
8224 "admin"
8225 ]
8226 },
8227 "protected" : 1,
8228 "proxyto" : "master",
8229 "returns" : {
8230 "type" : "null"
8231 }
8232 },
8233 "GET" : {
6bd70b95 8234 "allowtoken" : 1,
d210277a
TL
8235 "description" : "List custom scores.",
8236 "method" : "GET",
8237 "name" : "list_scores",
8238 "parameters" : {
8239 "additionalProperties" : 0
8240 },
8241 "permissions" : {
8242 "check" : [
8243 "admin",
8244 "audit"
8245 ]
8246 },
8247 "proxyto" : "master",
8248 "returns" : {
8249 "items" : {
8250 "properties" : {
8251 "comment" : {
8252 "description" : "The Comment.",
8253 "optional" : 1,
8254 "type" : "string"
8255 },
8256 "digest" : {
8257 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
8258 "maxLength" : 40,
8259 "optional" : 1,
8260 "type" : "string"
8261 },
8262 "name" : {
8263 "description" : "The name of the rule.",
8264 "optional" : 1,
8265 "pattern" : "[a-zA-Z\\_\\-\\.0-9]+",
8266 "type" : "string"
8267 },
8268 "score" : {
8269 "description" : "The score the rule should be valued at.",
8270 "optional" : 1,
8271 "type" : "number"
8272 }
8273 },
8274 "type" : "object"
8275 },
8276 "links" : [
8277 {
8278 "href" : "{name}",
8279 "rel" : "child"
8280 }
8281 ],
8282 "type" : "array"
8283 }
8284 },
8285 "POST" : {
6bd70b95 8286 "allowtoken" : 1,
d210277a
TL
8287 "description" : "Create custom SpamAssassin score",
8288 "method" : "POST",
8289 "name" : "create_score",
8290 "parameters" : {
8291 "additionalProperties" : 0,
8292 "properties" : {
8293 "comment" : {
8294 "description" : "The Comment.",
8295 "optional" : 1,
8296 "type" : "string",
8297 "typetext" : "<string>"
8298 },
8299 "digest" : {
8300 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
8301 "maxLength" : 40,
8302 "optional" : 1,
8303 "type" : "string",
8304 "typetext" : "<string>"
8305 },
8306 "name" : {
8307 "description" : "The name of the rule.",
8308 "pattern" : "[a-zA-Z\\_\\-\\.0-9]+",
8309 "type" : "string"
8310 },
8311 "score" : {
8312 "description" : "The score the rule should be valued at.",
8313 "type" : "number",
8314 "typetext" : "<number>"
8315 }
8316 }
8317 },
8318 "protected" : 1,
8319 "proxyto" : "master",
8320 "returns" : {
8321 "type" : "null"
8322 }
8323 },
8324 "PUT" : {
6bd70b95 8325 "allowtoken" : 1,
d210277a
TL
8326 "description" : "Apply custom score changes.",
8327 "method" : "PUT",
8328 "name" : "apply_score_changes",
8329 "parameters" : {
8330 "additionalProperties" : 0,
8331 "properties" : {
8332 "digest" : {
8333 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
8334 "maxLength" : 40,
8335 "optional" : 1,
8336 "type" : "string",
8337 "typetext" : "<string>"
8338 },
8339 "restart-daemon" : {
8340 "default" : 0,
8341 "description" : "If set, also restarts pmg-smtp-filter. This is necessary for the changes to work.",
8342 "optional" : 1,
8343 "type" : "boolean",
8344 "typetext" : "<boolean>"
8345 }
8346 }
8347 },
8348 "permissions" : {
8349 "check" : [
8350 "admin"
8351 ]
8352 },
8353 "protected" : 1,
8354 "proxyto" : "master",
8355 "returns" : {
8356 "type" : "string"
8357 }
8358 }
8359 },
8360 "leaf" : 0,
8361 "path" : "/config/customscores",
8362 "text" : "customscores"
8363 },
8364 {
8365 "info" : {
8366 "GET" : {
6bd70b95 8367 "allowtoken" : 1,
d210277a
TL
8368 "description" : "Read admin configuration properties.",
8369 "method" : "GET",
8370 "name" : "read_admin_section",
8371 "parameters" : {
8372 "additionalProperties" : 0
8373 },
8374 "permissions" : {
8375 "check" : [
8376 "admin",
8377 "audit"
8378 ]
8379 },
8380 "proxyto" : "master",
8381 "returns" : {
8382 "type" : "object"
8383 }
8384 },
8385 "PUT" : {
6bd70b95 8386 "allowtoken" : 1,
d210277a
TL
8387 "description" : "Update admin configuration properties.",
8388 "method" : "PUT",
8389 "name" : "update_admin_section",
8390 "parameters" : {
8391 "additionalProperties" : 0,
8392 "properties" : {
8393 "advfilter" : {
8394 "default" : 1,
8395 "description" : "Use advanced filters for statistic.",
8396 "optional" : 1,
8397 "type" : "boolean",
8398 "typetext" : "<boolean>"
8399 },
8400 "avast" : {
8401 "default" : 0,
8402 "description" : "Use Avast Virus Scanner (/usr/bin/scan). You need to buy and install 'Avast Core Security' before you can enable this feature.",
f225b3b4
DM
8403 "optional" : 1,
8404 "type" : "boolean",
8405 "typetext" : "<boolean>"
8406 },
8407 "clamav" : {
8408 "default" : 1,
8409 "description" : "Use ClamAV Virus Scanner. This is the default virus scanner and is enabled by default.",
8410 "optional" : 1,
8411 "type" : "boolean",
8412 "typetext" : "<boolean>"
8413 },
241ac83c
TL
8414 "custom_check" : {
8415 "default" : 0,
8416 "description" : "Use Custom Check Script. The script has to take the defined arguments and can return Virus findings or a Spamscore.",
8417 "optional" : 1,
8418 "type" : "boolean",
8419 "typetext" : "<boolean>"
8420 },
8421 "custom_check_path" : {
8422 "default" : "/usr/local/bin/pmg-custom-check",
8423 "description" : "Absolute Path to the Custom Check Script",
8424 "optional" : 1,
8425 "pattern" : "^/([^/\\0]+\\/)+[^/\\0]+$",
8426 "type" : "string"
8427 },
410dc2c9
DM
8428 "dailyreport" : {
8429 "default" : 1,
8430 "description" : "Send daily reports.",
8431 "optional" : 1,
8432 "type" : "boolean",
8433 "typetext" : "<boolean>"
8434 },
8435 "delete" : {
8436 "description" : "A list of settings you want to delete.",
8437 "format" : "pve-configid-list",
8438 "maxLength" : 4096,
8439 "optional" : 1,
8440 "type" : "string",
8441 "typetext" : "<string>"
8442 },
8443 "demo" : {
8444 "default" : 0,
8445 "description" : "Demo mode - do not start SMTP filter.",
8446 "optional" : 1,
8447 "type" : "boolean",
8448 "typetext" : "<boolean>"
8449 },
8450 "digest" : {
8451 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
8452 "maxLength" : 40,
8453 "optional" : 1,
8454 "type" : "string",
8455 "typetext" : "<string>"
8456 },
d210277a
TL
8457 "dkim_selector" : {
8458 "description" : "Default DKIM selector",
8459 "format" : "dns-name",
8460 "optional" : 1,
8461 "type" : "string",
8462 "typetext" : "<string>"
8463 },
8464 "dkim_sign" : {
8465 "default" : 0,
8466 "description" : "DKIM sign outbound mails with the configured Selector.",
8467 "optional" : 1,
8468 "type" : "boolean",
8469 "typetext" : "<boolean>"
8470 },
8471 "dkim_sign_all_mail" : {
8472 "default" : 0,
8473 "description" : "DKIM sign all outgoing mails irrespective of the Envelope From domain.",
8474 "optional" : 1,
8475 "type" : "boolean",
8476 "typetext" : "<boolean>"
8477 },
eff914dc
DM
8478 "email" : {
8479 "default" : "admin@domain.tld",
8480 "description" : "Administrator E-Mail address.",
8481 "format" : "email",
8482 "optional" : 1,
8483 "type" : "string",
8484 "typetext" : "<string>"
8485 },
9fda36b0
DM
8486 "http_proxy" : {
8487 "description" : "Specify external http proxy which is used for downloads (example: 'http://username:password@host:port/')",
410dc2c9 8488 "optional" : 1,
9fda36b0
DM
8489 "pattern" : "http://.*",
8490 "type" : "string"
a55e94a6
DM
8491 },
8492 "statlifetime" : {
8493 "default" : 7,
8494 "description" : "User Statistics Lifetime (days)",
8495 "minimum" : 1,
8496 "optional" : 1,
8497 "type" : "integer",
8498 "typetext" : "<integer> (1 - N)"
410dc2c9
DM
8499 }
8500 },
8501 "type" : "object"
8502 },
732d76e1
DM
8503 "permissions" : {
8504 "check" : [
8505 "admin"
8506 ]
8507 },
410dc2c9
DM
8508 "protected" : 1,
8509 "proxyto" : "master",
8510 "returns" : {
8511 "type" : "null"
8512 }
8513 }
8514 },
8515 "leaf" : 1,
8516 "path" : "/config/admin",
8517 "text" : "admin"
8518 },
8519 {
8520 "info" : {
8521 "GET" : {
6bd70b95 8522 "allowtoken" : 1,
410dc2c9
DM
8523 "description" : "Read clamav configuration properties.",
8524 "method" : "GET",
8525 "name" : "read_clamav_section",
8526 "parameters" : {
8527 "additionalProperties" : 0
8528 },
732d76e1
DM
8529 "permissions" : {
8530 "check" : [
8531 "admin",
8532 "audit"
8533 ]
8534 },
410dc2c9
DM
8535 "proxyto" : "master",
8536 "returns" : {
8537 "type" : "object"
8538 }
8539 },
8540 "PUT" : {
6bd70b95 8541 "allowtoken" : 1,
410dc2c9
DM
8542 "description" : "Update clamav configuration properties.",
8543 "method" : "PUT",
8544 "name" : "update_clamav_section",
8545 "parameters" : {
8546 "additionalProperties" : 0,
8547 "properties" : {
8548 "archiveblockencrypted" : {
8549 "default" : 0,
6a73cfb0 8550 "description" : "Whether to mark encrypted archives and documents as heuristic virus match. A match does not necessarily result in an immediate block, it just raises the Spam Score by 'clamav_heuristic_score'.",
410dc2c9
DM
8551 "optional" : 1,
8552 "type" : "boolean",
8553 "typetext" : "<boolean>"
8554 },
8555 "archivemaxfiles" : {
8556 "default" : 1000,
8557 "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.",
8558 "minimum" : 0,
8559 "optional" : 1,
8560 "type" : "integer",
8561 "typetext" : "<integer> (0 - N)"
8562 },
8563 "archivemaxrec" : {
8564 "default" : 5,
8565 "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.",
8566 "minimum" : 1,
8567 "optional" : 1,
8568 "type" : "integer",
8569 "typetext" : "<integer> (1 - N)"
8570 },
8571 "archivemaxsize" : {
8572 "default" : 25000000,
6a73cfb0 8573 "description" : "Files larger than this limit (in bytes) won't be scanned.",
410dc2c9
DM
8574 "minimum" : 1000000,
8575 "optional" : 1,
8576 "type" : "integer",
8577 "typetext" : "<integer> (1000000 - N)"
8578 },
8579 "dbmirror" : {
8580 "default" : "database.clamav.net",
8581 "description" : "ClamAV database mirror server.",
8582 "optional" : 1,
8583 "type" : "string",
8584 "typetext" : "<string>"
8585 },
8586 "delete" : {
8587 "description" : "A list of settings you want to delete.",
8588 "format" : "pve-configid-list",
8589 "maxLength" : 4096,
8590 "optional" : 1,
8591 "type" : "string",
8592 "typetext" : "<string>"
8593 },
8594 "digest" : {
8595 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
8596 "maxLength" : 40,
8597 "optional" : 1,
8598 "type" : "string",
8599 "typetext" : "<string>"
8600 },
8601 "maxcccount" : {
8602 "default" : 0,
8603 "description" : "This option sets the lowest number of Credit Card or Social Security numbers found in a file to generate a detect.",
8604 "minimum" : 0,
8605 "optional" : 1,
8606 "type" : "integer",
8607 "typetext" : "<integer> (0 - N)"
8608 },
8609 "maxscansize" : {
8610 "default" : 100000000,
6a73cfb0 8611 "description" : "Sets the maximum amount of data (in bytes) to be scanned for each input file.",
410dc2c9
DM
8612 "minimum" : 1000000,
8613 "optional" : 1,
8614 "type" : "integer",
8615 "typetext" : "<integer> (1000000 - N)"
f245a28c
DM
8616 },
8617 "safebrowsing" : {
8618 "default" : 1,
8619 "description" : "Enables support for Google Safe Browsing.",
8620 "optional" : 1,
8621 "type" : "boolean",
8622 "typetext" : "<boolean>"
410dc2c9
DM
8623 }
8624 },
8625 "type" : "object"
8626 },
732d76e1
DM
8627 "permissions" : {
8628 "check" : [
8629 "admin"
8630 ]
8631 },
410dc2c9
DM
8632 "protected" : 1,
8633 "proxyto" : "master",
8634 "returns" : {
8635 "type" : "null"
8636 }
8637 }
8638 },
8639 "leaf" : 1,
8640 "path" : "/config/clamav",
8641 "text" : "clamav"
8642 },
8643 {
8644 "info" : {
8645 "GET" : {
6bd70b95 8646 "allowtoken" : 1,
410dc2c9
DM
8647 "description" : "Read mail configuration properties.",
8648 "method" : "GET",
8649 "name" : "read_mail_section",
8650 "parameters" : {
8651 "additionalProperties" : 0
8652 },
732d76e1
DM
8653 "permissions" : {
8654 "check" : [
8655 "admin",
8656 "audit"
8657 ]
8658 },
410dc2c9
DM
8659 "proxyto" : "master",
8660 "returns" : {
8661 "type" : "object"
8662 }
8663 },
8664 "PUT" : {
6bd70b95 8665 "allowtoken" : 1,
410dc2c9
DM
8666 "description" : "Update mail configuration properties.",
8667 "method" : "PUT",
8668 "name" : "update_mail_section",
8669 "parameters" : {
8670 "additionalProperties" : 0,
8671 "properties" : {
8672 "banner" : {
8673 "default" : "ESMTP Proxmox",
8674 "description" : "ESMTP banner.",
8675 "maxLength" : 1024,
8676 "optional" : 1,
8677 "type" : "string",
8678 "typetext" : "<string>"
8679 },
d210277a
TL
8680 "before_queue_filtering" : {
8681 "default" : 0,
8682 "description" : "Enable before queue filtering by pmg-smtp-filter",
8683 "optional" : 1,
8684 "type" : "boolean",
8685 "typetext" : "<boolean>"
8686 },
410dc2c9
DM
8687 "conn_count_limit" : {
8688 "default" : 50,
8689 "description" : "How many simultaneous connections any client is allowed to make to this service. To disable this feature, specify a limit of 0.",
8690 "minimum" : 0,
8691 "optional" : 1,
8692 "type" : "integer",
8693 "typetext" : "<integer> (0 - N)"
8694 },
8695 "conn_rate_limit" : {
8696 "default" : 0,
8697 "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.",
8698 "minimum" : 0,
8699 "optional" : 1,
8700 "type" : "integer",
8701 "typetext" : "<integer> (0 - N)"
8702 },
8703 "delete" : {
8704 "description" : "A list of settings you want to delete.",
8705 "format" : "pve-configid-list",
8706 "maxLength" : 4096,
8707 "optional" : 1,
8708 "type" : "string",
8709 "typetext" : "<string>"
8710 },
8711 "digest" : {
8712 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
8713 "maxLength" : 40,
8714 "optional" : 1,
8715 "type" : "string",
8716 "typetext" : "<string>"
8717 },
8718 "dnsbl_sites" : {
8719 "description" : "Optional list of DNS white/blacklist domains (see postscreen_dnsbl_sites parameter).",
274b47fc 8720 "format" : "dnsbl-entry-list",
410dc2c9
DM
8721 "optional" : 1,
8722 "type" : "string",
8723 "typetext" : "<string>"
8724 },
445686c9
DM
8725 "dnsbl_threshold" : {
8726 "default" : 1,
8727 "description" : "The inclusive lower bound for blocking a remote SMTP client, based on its combined DNSBL score (see postscreen_dnsbl_threshold parameter).",
8728 "minimum" : 0,
8729 "optional" : 1,
8730 "type" : "integer",
8731 "typetext" : "<integer> (0 - N)"
8732 },
410dc2c9
DM
8733 "dwarning" : {
8734 "default" : 4,
8735 "description" : "SMTP delay warning time (in hours).",
8736 "minimum" : 0,
8737 "optional" : 1,
8738 "type" : "integer",
8739 "typetext" : "<integer> (0 - N)"
8740 },
eff914dc 8741 "ext_port" : {
4a46ced6 8742 "default" : 25,
eff914dc
DM
8743 "description" : "SMTP port number for incoming mail (untrusted). This must be a different number than 'int_port'.",
8744 "maximum" : 65535,
8745 "minimum" : 1,
8746 "optional" : 1,
8747 "type" : "integer",
8748 "typetext" : "<integer> (1 - 65535)"
8749 },
410dc2c9
DM
8750 "greylist" : {
8751 "default" : 1,
8752 "description" : "Use Greylisting.",
8753 "optional" : 1,
8754 "type" : "boolean",
8755 "typetext" : "<boolean>"
8756 },
8757 "helotests" : {
8758 "default" : 0,
8759 "description" : "Use SMTP HELO tests.",
8760 "optional" : 1,
8761 "type" : "boolean",
8762 "typetext" : "<boolean>"
8763 },
8764 "hide_received" : {
8765 "default" : 0,
8766 "description" : "Hide received header in outgoing mails.",
8767 "optional" : 1,
8768 "type" : "boolean",
8769 "typetext" : "<boolean>"
8770 },
eff914dc 8771 "int_port" : {
4a46ced6 8772 "default" : 26,
eff914dc
DM
8773 "description" : "SMTP port number for outgoing mail (trusted).",
8774 "maximum" : 65535,
8775 "minimum" : 1,
8776 "optional" : 1,
8777 "type" : "integer",
8778 "typetext" : "<integer> (1 - 65535)"
8779 },
410dc2c9 8780 "max_filters" : {
241ac83c 8781 "default" : 35,
410dc2c9
DM
8782 "description" : "Maximum number of pmg-smtp-filter processes.",
8783 "maximum" : 40,
8784 "minimum" : 3,
8785 "optional" : 1,
8786 "type" : "integer",
8787 "typetext" : "<integer> (3 - 40)"
8788 },
8789 "max_policy" : {
8790 "default" : 5,
8791 "description" : "Maximum number of pmgpolicy processes.",
8792 "maximum" : 10,
8793 "minimum" : 2,
8794 "optional" : 1,
8795 "type" : "integer",
8796 "typetext" : "<integer> (2 - 10)"
8797 },
8798 "max_smtpd_in" : {
241ac83c 8799 "default" : 100,
410dc2c9
DM
8800 "description" : "Maximum number of SMTP daemon processes (in).",
8801 "maximum" : 100,
8802 "minimum" : 3,
8803 "optional" : 1,
8804 "type" : "integer",
8805 "typetext" : "<integer> (3 - 100)"
8806 },
8807 "max_smtpd_out" : {
241ac83c 8808 "default" : 100,
410dc2c9
DM
8809 "description" : "Maximum number of SMTP daemon processes (out).",
8810 "maximum" : 100,
8811 "minimum" : 3,
8812 "optional" : 1,
8813 "type" : "integer",
8814 "typetext" : "<integer> (3 - 100)"
8815 },
8816 "maxsize" : {
8817 "default" : 10485760,
8818 "description" : "Maximum email size. Larger mails are rejected.",
8819 "minimum" : 1024,
8820 "optional" : 1,
8821 "type" : "integer",
8822 "typetext" : "<integer> (1024 - N)"
8823 },
8824 "message_rate_limit" : {
8825 "default" : 0,
8826 "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.",
8827 "minimum" : 0,
8828 "optional" : 1,
8829 "type" : "integer",
8830 "typetext" : "<integer> (0 - N)"
8831 },
d210277a
TL
8832 "ndr_on_block" : {
8833 "default" : 0,
8834 "description" : "Send out NDR when mail gets blocked",
8835 "optional" : 1,
8836 "type" : "boolean",
8837 "typetext" : "<boolean>"
8838 },
410dc2c9
DM
8839 "rejectunknown" : {
8840 "default" : 0,
8841 "description" : "Reject unknown clients.",
8842 "optional" : 1,
8843 "type" : "boolean",
8844 "typetext" : "<boolean>"
8845 },
8846 "rejectunknownsender" : {
8847 "default" : 0,
8848 "description" : "Reject unknown senders.",
8849 "optional" : 1,
8850 "type" : "boolean",
8851 "typetext" : "<boolean>"
8852 },
8853 "relay" : {
8854 "description" : "The default mail delivery transport (incoming mails).",
eff914dc 8855 "format" : "address",
410dc2c9
DM
8856 "optional" : 1,
8857 "type" : "string",
8858 "typetext" : "<string>"
8859 },
8860 "relaynomx" : {
8861 "default" : 0,
6bd70b95 8862 "description" : "Disable MX lookups for default relay (SMTP only, ignored for LMTP).",
410dc2c9
DM
8863 "optional" : 1,
8864 "type" : "boolean",
8865 "typetext" : "<boolean>"
8866 },
8867 "relayport" : {
8868 "default" : 25,
6bd70b95 8869 "description" : "SMTP/LMTP port number for relay host.",
410dc2c9
DM
8870 "maximum" : 65535,
8871 "minimum" : 1,
8872 "optional" : 1,
8873 "type" : "integer",
8874 "typetext" : "<integer> (1 - 65535)"
8875 },
6bd70b95
TL
8876 "relayprotocol" : {
8877 "default" : "smtp",
8878 "description" : "Transport protocol for relay host.",
8879 "enum" : [
8880 "smtp",
8881 "lmtp"
8882 ],
8883 "optional" : 1,
8884 "type" : "string"
8885 },
eff914dc
DM
8886 "smarthost" : {
8887 "description" : "When set, all outgoing mails are deliverd to the specified smarthost.",
8888 "format" : "address",
8889 "optional" : 1,
8890 "type" : "string",
8891 "typetext" : "<string>"
8892 },
445686c9
DM
8893 "smarthostport" : {
8894 "default" : 25,
8895 "description" : "SMTP port number for smarthost.",
8896 "maximum" : 65535,
8897 "minimum" : 1,
8898 "optional" : 1,
8899 "type" : "integer",
8900 "typetext" : "<integer> (1 - 65535)"
8901 },
410dc2c9
DM
8902 "spf" : {
8903 "default" : 1,
8904 "description" : "Use Sender Policy Framework.",
8905 "optional" : 1,
8906 "type" : "boolean",
8907 "typetext" : "<boolean>"
8908 },
8909 "tls" : {
8910 "default" : 0,
eff914dc
DM
8911 "description" : "Enable TLS.",
8912 "optional" : 1,
8913 "type" : "boolean",
8914 "typetext" : "<boolean>"
8915 },
8916 "tlsheader" : {
8917 "default" : 0,
8918 "description" : "Add TLS received header.",
8919 "optional" : 1,
8920 "type" : "boolean",
8921 "typetext" : "<boolean>"
8922 },
8923 "tlslog" : {
8924 "default" : 0,
8925 "description" : "Enable TLS Logging.",
410dc2c9
DM
8926 "optional" : 1,
8927 "type" : "boolean",
8928 "typetext" : "<boolean>"
8929 },
410dc2c9 8930 "verifyreceivers" : {
eff914dc
DM
8931 "description" : "Enable receiver verification. The value spefifies the numerical reply code when the Postfix SMTP server rejects a recipient address.",
8932 "enum" : [
8933 "450",
8934 "550"
8935 ],
410dc2c9 8936 "optional" : 1,
eff914dc 8937 "type" : "string"
410dc2c9
DM
8938 }
8939 },
8940 "type" : "object"
8941 },
732d76e1
DM
8942 "permissions" : {
8943 "check" : [
8944 "admin"
8945 ]
8946 },
410dc2c9
DM
8947 "protected" : 1,
8948 "proxyto" : "master",
8949 "returns" : {
8950 "type" : "null"
8951 }
8952 }
8953 },
8954 "leaf" : 1,
8955 "path" : "/config/mail",
8956 "text" : "mail"
8957 },
8958 {
8959 "info" : {
8960 "GET" : {
6bd70b95 8961 "allowtoken" : 1,
410dc2c9
DM
8962 "description" : "Read spam configuration properties.",
8963 "method" : "GET",
8964 "name" : "read_spam_section",
8965 "parameters" : {
8966 "additionalProperties" : 0
8967 },
732d76e1
DM
8968 "permissions" : {
8969 "check" : [
8970 "admin",
8971 "audit"
8972 ]
8973 },
410dc2c9
DM
8974 "proxyto" : "master",
8975 "returns" : {
8976 "type" : "object"
8977 }
8978 },
8979 "PUT" : {
6bd70b95 8980 "allowtoken" : 1,
410dc2c9
DM
8981 "description" : "Update spam configuration properties.",
8982 "method" : "PUT",
8983 "name" : "update_spam_section",
8984 "parameters" : {
8985 "additionalProperties" : 0,
8986 "properties" : {
8987 "bounce_score" : {
8988 "default" : 0,
8989 "description" : "Additional score for bounce mails.",
8990 "maximum" : 1000,
8991 "minimum" : 0,
8992 "optional" : 1,
8993 "type" : "integer",
8994 "typetext" : "<integer> (0 - 1000)"
8995 },
274b47fc
DM
8996 "clamav_heuristic_score" : {
8997 "default" : 3,
6a73cfb0 8998 "description" : "Score for ClamAV heuristics (Encrypted Archives/Documents, Google Safe Browsing database, PhishingScanURLs, ...).",
274b47fc
DM
8999 "maximum" : 1000,
9000 "minimum" : 0,
9001 "optional" : 1,
9002 "type" : "integer",
9003 "typetext" : "<integer> (0 - 1000)"
9004 },
410dc2c9
DM
9005 "delete" : {
9006 "description" : "A list of settings you want to delete.",
9007 "format" : "pve-configid-list",
9008 "maxLength" : 4096,
9009 "optional" : 1,
9010 "type" : "string",
9011 "typetext" : "<string>"
9012 },
9013 "digest" : {
9014 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
9015 "maxLength" : 40,
9016 "optional" : 1,
9017 "type" : "string",
9018 "typetext" : "<string>"
9019 },
9020 "languages" : {
9021 "default" : "all",
9022 "description" : "This option is used to specify which languages are considered OK for incoming mail.",
9023 "optional" : 1,
9024 "pattern" : "(all|([a-z][a-z])+( ([a-z][a-z])+)*)",
9025 "type" : "string"
9026 },
9027 "maxspamsize" : {
274b47fc 9028 "default" : 262144,
410dc2c9
DM
9029 "description" : "Maximum size of spam messages in bytes.",
9030 "minimum" : 64,
9031 "optional" : 1,
9032 "type" : "integer",
9033 "typetext" : "<integer> (64 - N)"
9034 },
9035 "rbl_checks" : {
9036 "default" : 1,
9037 "description" : "Enable real time blacklists (RBL) checks.",
9038 "optional" : 1,
9039 "type" : "boolean",
9040 "typetext" : "<boolean>"
9041 },
9042 "use_awl" : {
9043 "default" : 1,
9044 "description" : "Use the Auto-Whitelist plugin.",
9045 "optional" : 1,
9046 "type" : "boolean",
9047 "typetext" : "<boolean>"
9048 },
9049 "use_bayes" : {
9050 "default" : 1,
9051 "description" : "Whether to use the naive-Bayesian-style classifier.",
9052 "optional" : 1,
9053 "type" : "boolean",
9054 "typetext" : "<boolean>"
9055 },
410dc2c9
DM
9056 "use_razor" : {
9057 "default" : 1,
9058 "description" : "Whether to use Razor2, if it is available.",
9059 "optional" : 1,
9060 "type" : "boolean",
9061 "typetext" : "<boolean>"
9062 },
9063 "wl_bounce_relays" : {
9064 "description" : "Whitelist legitimate bounce relays.",
9065 "optional" : 1,
9066 "type" : "string",
9067 "typetext" : "<string>"
9068 }
9069 },
9070 "type" : "object"
9071 },
732d76e1
DM
9072 "permissions" : {
9073 "check" : [
9074 "admin"
9075 ]
9076 },
410dc2c9
DM
9077 "protected" : 1,
9078 "proxyto" : "master",
9079 "returns" : {
9080 "type" : "null"
9081 }
9082 }
9083 },
9084 "leaf" : 1,
9085 "path" : "/config/spam",
9086 "text" : "spam"
f245a28c
DM
9087 },
9088 {
9089 "info" : {
9090 "GET" : {
6bd70b95 9091 "allowtoken" : 1,
f245a28c
DM
9092 "description" : "Read spamquar configuration properties.",
9093 "method" : "GET",
9094 "name" : "read_spamquar_section",
9095 "parameters" : {
9096 "additionalProperties" : 0
9097 },
732d76e1
DM
9098 "permissions" : {
9099 "check" : [
9100 "admin",
9101 "audit"
9102 ]
9103 },
f245a28c
DM
9104 "proxyto" : "master",
9105 "returns" : {
9106 "type" : "object"
9107 }
9108 },
9109 "PUT" : {
6bd70b95 9110 "allowtoken" : 1,
f245a28c
DM
9111 "description" : "Update spamquar configuration properties.",
9112 "method" : "PUT",
9113 "name" : "update_spamquar_section",
9114 "parameters" : {
9115 "additionalProperties" : 0,
9116 "properties" : {
9117 "allowhrefs" : {
9118 "default" : 1,
9119 "description" : "Allow to view hyperlinks.",
9120 "optional" : 1,
9121 "type" : "boolean",
9122 "typetext" : "<boolean>"
9123 },
9124 "authmode" : {
9125 "default" : "ticket",
9126 "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.",
9127 "enum" : [
9128 "ticket",
9129 "ldap",
9130 "ldapticket"
9131 ],
9132 "optional" : 1,
9133 "type" : "string"
9134 },
9135 "delete" : {
9136 "description" : "A list of settings you want to delete.",
9137 "format" : "pve-configid-list",
9138 "maxLength" : 4096,
9139 "optional" : 1,
9140 "type" : "string",
9141 "typetext" : "<string>"
9142 },
9143 "digest" : {
9144 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
9145 "maxLength" : 40,
9146 "optional" : 1,
9147 "type" : "string",
9148 "typetext" : "<string>"
9149 },
9150 "hostname" : {
b81b1f95 9151 "description" : "Quarantine Host. Useful if you run a Cluster and want users to connect to a specific host.",
f245a28c
DM
9152 "format" : "address",
9153 "optional" : 1,
9154 "type" : "string",
9155 "typetext" : "<string>"
9156 },
9157 "lifetime" : {
9158 "default" : 7,
9159 "description" : "Quarantine life time (days)",
9160 "minimum" : 1,
9161 "optional" : 1,
9162 "type" : "integer",
9163 "typetext" : "<integer> (1 - N)"
9164 },
9165 "mailfrom" : {
9166 "description" : "Text for 'From' header in daily spam report mails.",
9167 "optional" : 1,
9168 "type" : "string",
9169 "typetext" : "<string>"
9170 },
b81b1f95
DM
9171 "port" : {
9172 "default" : 8006,
9173 "description" : "Quarantine Port. Useful if you have a reverse proxy or port forwarding for the webinterface. Only used for the generated Spam report.",
9174 "maximum" : 65535,
9175 "minimum" : 1,
9176 "optional" : 1,
9177 "type" : "integer",
9178 "typetext" : "<integer> (1 - 65535)"
9179 },
9180 "protocol" : {
9181 "default" : "https",
9182 "description" : "Quarantine Webinterface Protocol. Useful if you have a reverse proxy for the webinterface. Only used for the generated Spam report.",
9183 "enum" : [
9184 "http",
9185 "https"
9186 ],
9187 "optional" : 1,
9188 "type" : "string"
9189 },
f245a28c
DM
9190 "reportstyle" : {
9191 "default" : "verbose",
9192 "description" : "Spam report style.",
9193 "enum" : [
9194 "none",
9195 "short",
9196 "verbose",
f245a28c
DM
9197 "custom"
9198 ],
9199 "optional" : 1,
9200 "type" : "string"
9201 },
a55e94a6
DM
9202 "viewimages" : {
9203 "default" : 1,
9204 "description" : "Allow to view images.",
9205 "optional" : 1,
9206 "type" : "boolean",
9207 "typetext" : "<boolean>"
9208 }
9209 },
9210 "type" : "object"
9211 },
732d76e1
DM
9212 "permissions" : {
9213 "check" : [
9214 "admin"
9215 ]
9216 },
a55e94a6
DM
9217 "protected" : 1,
9218 "proxyto" : "master",
9219 "returns" : {
9220 "type" : "null"
9221 }
9222 }
9223 },
9224 "leaf" : 1,
9225 "path" : "/config/spamquar",
9226 "text" : "spamquar"
9227 },
9228 {
9229 "info" : {
9230 "GET" : {
6bd70b95 9231 "allowtoken" : 1,
a55e94a6
DM
9232 "description" : "Read virusquar configuration properties.",
9233 "method" : "GET",
9234 "name" : "read_virusquar_section",
9235 "parameters" : {
9236 "additionalProperties" : 0
9237 },
732d76e1
DM
9238 "permissions" : {
9239 "check" : [
9240 "admin",
9241 "audit"
9242 ]
9243 },
a55e94a6
DM
9244 "proxyto" : "master",
9245 "returns" : {
9246 "type" : "object"
9247 }
9248 },
9249 "PUT" : {
6bd70b95 9250 "allowtoken" : 1,
a55e94a6
DM
9251 "description" : "Update virusquar configuration properties.",
9252 "method" : "PUT",
9253 "name" : "update_virusquar_section",
9254 "parameters" : {
9255 "additionalProperties" : 0,
9256 "properties" : {
9257 "allowhrefs" : {
9258 "default" : 1,
9259 "description" : "Allow to view hyperlinks.",
9260 "optional" : 1,
9261 "type" : "boolean",
9262 "typetext" : "<boolean>"
9263 },
9264 "delete" : {
9265 "description" : "A list of settings you want to delete.",
9266 "format" : "pve-configid-list",
9267 "maxLength" : 4096,
9268 "optional" : 1,
9269 "type" : "string",
9270 "typetext" : "<string>"
9271 },
9272 "digest" : {
9273 "description" : "Prevent changes if current configuration file has different SHA1 digest. This can be used to prevent concurrent modifications.",
9274 "maxLength" : 40,
9275 "optional" : 1,
9276 "type" : "string",
9277 "typetext" : "<string>"
9278 },
9279 "lifetime" : {
9280 "default" : 7,
9281 "description" : "Quarantine life time (days)",
9282 "minimum" : 1,
9283 "optional" : 1,
9284 "type" : "integer",
9285 "typetext" : "<integer> (1 - N)"
9286 },
9287 "viewimages" : {
9288 "default" : 1,
9289 "description" : "Allow to view images.",
9290 "optional" : 1,
9291 "type" : "boolean",
9292 "typetext" : "<boolean>"
9293 }
9294 },
9295 "type" : "object"
9296 },
732d76e1
DM
9297 "permissions" : {
9298 "check" : [
9299 "admin"
9300 ]
9301 },
a55e94a6
DM
9302 "protected" : 1,
9303 "proxyto" : "master",
9304 "returns" : {
9305 "type" : "null"
9306 }
9307 }
9308 },
9309 "leaf" : 1,
9310 "path" : "/config/virusquar",
9311 "text" : "virusquar"
9fda36b0
DM
9312 },
9313 {
9314 "info" : {
9315 "POST" : {
6bd70b95 9316 "allowtoken" : 1,
9fda36b0
DM
9317 "description" : "Test Regex",
9318 "method" : "POST",
9319 "name" : "regextest",
9320 "parameters" : {
9321 "additionalProperties" : 0,
9322 "properties" : {
9323 "regex" : {
9324 "description" : "The Regex to test",
9325 "maxLength" : 1024,
9326 "type" : "string",
9327 "typetext" : "<string>"
9328 },
9329 "text" : {
9330 "description" : "The String to test",
9331 "maxLength" : 1024,
9332 "type" : "string",
9333 "typetext" : "<string>"
9334 }
9335 }
9336 },
9337 "permissions" : {
9338 "check" : [
9339 "admin",
9340 "qmanager",
9341 "audit"
9342 ]
9343 },
9344 "protected" : 0,
9345 "returns" : {
9346 "type" : "number"
9347 }
9348 }
9349 },
9350 "leaf" : 1,
9351 "path" : "/config/regextest",
9352 "text" : "regextest"
a55e94a6
DM
9353 }
9354 ],
9355 "info" : {
9356 "GET" : {
6bd70b95 9357 "allowtoken" : 1,
a55e94a6
DM
9358 "description" : "Directory index.",
9359 "method" : "GET",
9360 "name" : "index",
9361 "parameters" : {
9362 "additionalProperties" : 0
9363 },
9364 "returns" : {
9365 "items" : {
9366 "properties" : {
9367 "section" : {
9368 "type" : "string"
9369 }
9370 },
9371 "type" : "object"
9372 },
9373 "links" : [
9374 {
9375 "href" : "{section}",
9376 "rel" : "child"
9377 }
9378 ],
9379 "type" : "array"
9380 }
9381 }
9382 },
9383 "leaf" : 0,
9384 "path" : "/config",
9385 "text" : "config"
9386 },
9387 {
9388 "children" : [
9389 {
9390 "children" : [
9391 {
9392 "children" : [
9393 {
9394 "info" : {
9395 "GET" : {
6bd70b95 9396 "allowtoken" : 1,
a55e94a6
DM
9397 "description" : "Print Postfix queue domain and age distribution.",
9398 "method" : "GET",
9399 "name" : "qshape",
9400 "parameters" : {
9401 "additionalProperties" : 0,
9402 "properties" : {
9403 "node" : {
9404 "description" : "The cluster node name.",
9405 "format" : "pve-node",
9406 "type" : "string",
9407 "typetext" : "<string>"
9408 },
9409 "queue" : {
9410 "default" : "deferred",
9411 "description" : "Postfix queue name.",
9412 "enum" : [
9413 "deferred",
9414 "active",
9415 "incoming",
9416 "hold"
9417 ],
9418 "optional" : 1,
9419 "type" : "string"
9420 }
9421 }
9422 },
9423 "permissions" : {
9424 "check" : [
732d76e1
DM
9425 "admin",
9426 "audit"
a55e94a6
DM
9427 ]
9428 },
9429 "protected" : 1,
9430 "proxyto" : "node",
9431 "returns" : {
9432 "items" : {
9433 "properties" : {},
9434 "type" : "object"
9435 },
9436 "type" : "array"
9437 }
9438 }
9439 },
9440 "leaf" : 1,
9441 "path" : "/nodes/{node}/postfix/qshape",
9442 "text" : "qshape"
9443 },
9444 {
9445 "children" : [
9446 {
9447 "children" : [
9448 {
9449 "info" : {
9450 "DELETE" : {
6bd70b95 9451 "allowtoken" : 1,
a55e94a6
DM
9452 "description" : "Delete one message with the named queue ID.",
9453 "method" : "DELETE",
9454 "name" : "delete_queued_mail",
9455 "parameters" : {
9456 "additionalProperties" : 0,
9457 "properties" : {
9458 "node" : {
9459 "description" : "The cluster node name.",
9460 "format" : "pve-node",
9461 "type" : "string",
9462 "typetext" : "<string>"
9463 },
9464 "queue" : {
9465 "description" : "Postfix queue name.",
9466 "enum" : [
9467 "deferred",
9468 "active",
9469 "incoming",
9470 "hold"
9471 ],
9472 "type" : "string"
9473 },
9474 "queue_id" : {
9475 "description" : "The Message queue ID.",
9476 "maxLength" : 20,
9477 "minLength" : 8,
9478 "pattern" : "[a-zA-Z0-9]+",
9479 "type" : "string"
9480 }
9481 }
9482 },
9483 "permissions" : {
9484 "check" : [
9485 "admin"
9486 ]
9487 },
9488 "protected" : 1,
9489 "proxyto" : "node",
9490 "returns" : {
9491 "type" : "null"
9492 }
9493 },
9494 "GET" : {
6bd70b95 9495 "allowtoken" : 1,
a55e94a6
DM
9496 "description" : "Get the contents of a queued mail.",
9497 "method" : "GET",
9498 "name" : "read_queued_mail",
9499 "parameters" : {
9500 "additionalProperties" : 0,
9501 "properties" : {
9502 "body" : {
9503 "default" : 0,
9504 "description" : "Include body content.",
9505 "optional" : 1,
9506 "type" : "boolean",
9507 "typetext" : "<boolean>"
9508 },
9509 "header" : {
9510 "default" : 1,
9511 "description" : "Show message header content.",
9512 "optional" : 1,
9513 "type" : "boolean",
9514 "typetext" : "<boolean>"
9515 },
9516 "node" : {
9517 "description" : "The cluster node name.",
9518 "format" : "pve-node",
9519 "type" : "string",
9520 "typetext" : "<string>"
9521 },
9522 "queue" : {
9523 "description" : "Postfix queue name.",
9524 "enum" : [
9525 "deferred",
9526 "active",
9527 "incoming",
9528 "hold"
9529 ],
9530 "type" : "string"
9531 },
9532 "queue_id" : {
9533 "description" : "The Message queue ID.",
9534 "maxLength" : 20,
9535 "minLength" : 8,
9536 "pattern" : "[a-zA-Z0-9]+",
9537 "type" : "string"
9538 }
9539 }
9540 },
9541 "permissions" : {
9542 "check" : [
9543 "admin"
9544 ]
9545 },
9546 "protected" : 1,
9547 "proxyto" : "node",
9548 "returns" : {
9549 "type" : "string"
9550 }
9551 },
9552 "POST" : {
6bd70b95 9553 "allowtoken" : 1,
a55e94a6
DM
9554 "description" : "Schedule immediate delivery of deferred mail with the specified queue ID.",
9555 "method" : "POST",
9556 "name" : "flush_queued_mail",
9557 "parameters" : {
9558 "additionalProperties" : 0,
9559 "properties" : {
9560 "node" : {
9561 "description" : "The cluster node name.",
9562 "format" : "pve-node",
9563 "type" : "string",
9564 "typetext" : "<string>"
9565 },
9566 "queue" : {
9567 "description" : "Postfix queue name.",
9568 "enum" : [
9569 "deferred",
9570 "active",
9571 "incoming",
9572 "hold"
9573 ],
9574 "type" : "string"
9575 },
9576 "queue_id" : {
9577 "description" : "The Message queue ID.",
9578 "maxLength" : 20,
9579 "minLength" : 8,
9580 "pattern" : "[a-zA-Z0-9]+",
9581 "type" : "string"
9582 }
9583 }
9584 },
9585 "permissions" : {
9586 "check" : [
9587 "admin"
9588 ]
9589 },
9590 "protected" : 1,
9591 "proxyto" : "node",
9592 "returns" : {
9593 "type" : "null"
9594 }
9595 }
9596 },
9597 "leaf" : 1,
9598 "path" : "/nodes/{node}/postfix/queue/{queue}/{queue_id}",
9599 "text" : "{queue_id}"
9600 }
9601 ],
9602 "info" : {
9603 "DELETE" : {
6bd70b95 9604 "allowtoken" : 1,
a55e94a6
DM
9605 "description" : "Delete all mails in the queue.",
9606 "method" : "DELETE",
9607 "name" : "delete_queue",
9608 "parameters" : {
9609 "additionalProperties" : 0,
9610 "properties" : {
9611 "node" : {
9612 "description" : "The cluster node name.",
9613 "format" : "pve-node",
9614 "type" : "string",
9615 "typetext" : "<string>"
9616 },
9617 "queue" : {
9618 "description" : "Postfix queue name.",
9619 "enum" : [
9620 "deferred",
9621 "active",
9622 "incoming",
9623 "hold"
9624 ],
9625 "type" : "string"
9626 }
9627 }
9628 },
9629 "permissions" : {
9630 "check" : [
9631 "admin"
9632 ]
9633 },
9634 "protected" : 1,
9635 "proxyto" : "node",
9636 "returns" : {
9637 "type" : "null"
9638 }
9639 },
9640 "GET" : {
6bd70b95 9641 "allowtoken" : 1,
a55e94a6
DM
9642 "description" : "List the mail queue for a specific domain.",
9643 "method" : "GET",
9644 "name" : "mailq",
9645 "parameters" : {
9646 "additionalProperties" : 0,
9647 "properties" : {
9648 "filter" : {
9649 "description" : "Filter string.",
9650 "maxLength" : 64,
9651 "optional" : 1,
9652 "type" : "string",
9653 "typetext" : "<string>"
9654 },
9655 "limit" : {
9656 "minimum" : 0,
9657 "optional" : 1,
9658 "type" : "integer",
9659 "typetext" : "<integer> (0 - N)"
9660 },
9661 "node" : {
9662 "description" : "The cluster node name.",
9663 "format" : "pve-node",
9664 "type" : "string",
9665 "typetext" : "<string>"
9666 },
9667 "queue" : {
9668 "description" : "Postfix queue name.",
9669 "enum" : [
9670 "deferred",
9671 "active",
9672 "incoming",
9673 "hold"
9674 ],
9675 "type" : "string"
9676 },
9677 "start" : {
9678 "minimum" : 0,
9679 "optional" : 1,
9680 "type" : "integer",
9681 "typetext" : "<integer> (0 - N)"
9682 }
9683 }
9684 },
9685 "permissions" : {
9686 "check" : [
732d76e1
DM
9687 "admin",
9688 "audit"
a55e94a6
DM
9689 ]
9690 },
9691 "protected" : 1,
9692 "proxyto" : "node",
9693 "returns" : {
9694 "items" : {
9695 "properties" : {},
9696 "type" : "object"
9697 },
9698 "links" : [
9699 {
9700 "href" : "{queue_id}",
9701 "rel" : "child"
9702 }
9703 ],
9704 "type" : "array"
9705 }
9706 }
9707 },
9708 "leaf" : 0,
9709 "path" : "/nodes/{node}/postfix/queue/{queue}",
9710 "text" : "{queue}"
9711 }
9712 ],
9713 "info" : {
9fda36b0 9714 "DELETE" : {
6bd70b95 9715 "allowtoken" : 1,
9fda36b0
DM
9716 "description" : "Delete all mails in all posfix queues.",
9717 "method" : "DELETE",
9718 "name" : "delete_all_queues",
9719 "parameters" : {
9720 "additionalProperties" : 0,
9721 "properties" : {
9722 "node" : {
9723 "description" : "The cluster node name.",
9724 "format" : "pve-node",
9725 "type" : "string",
9726 "typetext" : "<string>"
9727 }
9728 }
9729 },
9730 "permissions" : {
9731 "check" : [
9732 "admin"
9733 ]
9734 },
9735 "protected" : 1,
9736 "proxyto" : "node",
9737 "returns" : {
9738 "type" : "null"
9739 }
9740 },
a55e94a6 9741 "GET" : {
6bd70b95 9742 "allowtoken" : 1,
a55e94a6
DM
9743 "description" : "Directory index.",
9744 "method" : "GET",
9745 "name" : "queue_index",
9746 "parameters" : {
9747 "additionalProperties" : 0,
9748 "properties" : {
9749 "node" : {
9750 "description" : "The cluster node name.",
9751 "format" : "pve-node",
9752 "type" : "string",
9753 "typetext" : "<string>"
9754 }
9755 }
9756 },
9757 "permissions" : {
9758 "user" : "all"
9759 },
9760 "returns" : {
9761 "items" : {
9762 "properties" : {},
9763 "type" : "object"
9764 },
9765 "links" : [
9766 {
9767 "href" : "{name}",
9768 "rel" : "child"
9769 }
9770 ],
9771 "type" : "array"
9772 }
9773 }
9774 },
9775 "leaf" : 0,
9776 "path" : "/nodes/{node}/postfix/queue",
9777 "text" : "queue"
f245a28c 9778 },
a55e94a6
DM
9779 {
9780 "info" : {
9781 "POST" : {
6bd70b95 9782 "allowtoken" : 1,
a55e94a6
DM
9783 "description" : "Flush the queue: attempt to deliver all queued mail.",
9784 "method" : "POST",
9785 "name" : "flush_queues",
9786 "parameters" : {
9787 "additionalProperties" : 0,
9788 "properties" : {
9789 "node" : {
9790 "description" : "The cluster node name.",
9791 "format" : "pve-node",
9792 "type" : "string",
9793 "typetext" : "<string>"
9794 }
9795 }
9796 },
9797 "permissions" : {
9798 "check" : [
9799 "admin"
9800 ]
9801 },
9802 "protected" : 1,
9803 "proxyto" : "node",
9804 "returns" : {
9805 "type" : "null"
9806 }
9807 }
f245a28c 9808 },
a55e94a6
DM
9809 "leaf" : 1,
9810 "path" : "/nodes/{node}/postfix/flush_queues",
9811 "text" : "flush_queues"
9812 },
9813 {
9814 "info" : {
9815 "POST" : {
6bd70b95 9816 "allowtoken" : 1,
a55e94a6
DM
9817 "description" : "Discards the address verification cache.",
9818 "method" : "POST",
9819 "name" : "discard_verify_cache",
9820 "parameters" : {
9821 "additionalProperties" : 0,
9822 "properties" : {
9823 "node" : {
9824 "description" : "The cluster node name.",
9825 "format" : "pve-node",
9826 "type" : "string",
9827 "typetext" : "<string>"
9828 }
9829 }
9830 },
9831 "permissions" : {
9832 "check" : [
9833 "admin"
9834 ]
9835 },
9836 "protected" : 1,
9837 "proxyto" : "node",
9838 "returns" : {
9839 "type" : "null"
9840 }
9841 }
f245a28c 9842 },
a55e94a6
DM
9843 "leaf" : 1,
9844 "path" : "/nodes/{node}/postfix/discard_verify_cache",
9845 "text" : "discard_verify_cache"
9846 }
9847 ],
9848 "info" : {
9849 "GET" : {
6bd70b95 9850 "allowtoken" : 1,
a55e94a6
DM
9851 "description" : "Directory index.",
9852 "method" : "GET",
9853 "name" : "index",
9854 "parameters" : {
9855 "additionalProperties" : 0,
9856 "properties" : {
9857 "node" : {
9858 "description" : "The cluster node name.",
9859 "format" : "pve-node",
9860 "type" : "string",
9861 "typetext" : "<string>"
9862 }
9863 }
f245a28c 9864 },
a55e94a6
DM
9865 "permissions" : {
9866 "user" : "all"
f245a28c 9867 },
a55e94a6
DM
9868 "returns" : {
9869 "items" : {
9870 "properties" : {},
9871 "type" : "object"
9872 },
9873 "links" : [
9874 {
9875 "href" : "{name}",
9876 "rel" : "child"
9877 }
9878 ],
9879 "type" : "array"
f245a28c 9880 }
410dc2c9
DM
9881 }
9882 },
a55e94a6
DM
9883 "leaf" : 0,
9884 "path" : "/nodes/{node}/postfix",
9885 "text" : "postfix"
410dc2c9 9886 },
f245a28c
DM
9887 {
9888 "children" : [
9889 {
9890 "info" : {
9891 "GET" : {
6bd70b95 9892 "allowtoken" : 1,
f245a28c
DM
9893 "description" : "ClamAV virus database status.",
9894 "method" : "GET",
9895 "name" : "database_status",
9896 "parameters" : {
9897 "additionalProperties" : 0,
9898 "properties" : {
9899 "node" : {
9900 "description" : "The cluster node name.",
9901 "format" : "pve-node",
9902 "type" : "string",
9903 "typetext" : "<string>"
9904 }
9905 }
9906 },
bb6e6e0d
DM
9907 "permissions" : {
9908 "check" : [
9909 "admin",
9910 "audit"
9911 ]
9912 },
9913 "proxyto" : "node",
f245a28c
DM
9914 "returns" : {
9915 "items" : {
9916 "properties" : {
9917 "build_time" : {
9918 "type" : "string"
9919 },
9920 "nsigs" : {
9921 "type" : "integer"
9922 },
9923 "type" : {
9924 "type" : "string"
9925 },
9926 "version" : {
9927 "optional" : 1,
9928 "type" : "string"
9929 }
9930 },
9931 "type" : "object"
9932 },
9933 "type" : "array"
9934 }
9935 },
9936 "POST" : {
6bd70b95 9937 "allowtoken" : 1,
f245a28c
DM
9938 "description" : "Update ClamAV virus databases.",
9939 "method" : "POST",
9940 "name" : "update_database",
9941 "parameters" : {
9942 "additionalProperties" : 0,
9943 "properties" : {
9944 "node" : {
9945 "description" : "The cluster node name.",
9946 "format" : "pve-node",
9947 "type" : "string",
9948 "typetext" : "<string>"
9949 }
9950 }
9951 },
bb6e6e0d
DM
9952 "permissions" : {
9953 "check" : [
9954 "admin"
9955 ]
9956 },
f245a28c 9957 "protected" : 1,
bb6e6e0d 9958 "proxyto" : "node",
f245a28c
DM
9959 "returns" : {
9960 "type" : "string"
9961 }
9962 }
9963 },
9964 "leaf" : 1,
9965 "path" : "/nodes/{node}/clamav/database",
9966 "text" : "database"
9967 }
9968 ],
9969 "info" : {
9970 "GET" : {
6bd70b95 9971 "allowtoken" : 1,
f245a28c
DM
9972 "description" : "Directory index.",
9973 "method" : "GET",
9974 "name" : "index",
9975 "parameters" : {
9976 "additionalProperties" : 0,
9977 "properties" : {
9978 "node" : {
9979 "description" : "The cluster node name.",
9980 "format" : "pve-node",
9981 "type" : "string",
9982 "typetext" : "<string>"
9983 }
9984 }
9985 },
bb6e6e0d
DM
9986 "permissions" : {
9987 "check" : [
9988 "admin",
9989 "audit"
9990 ]
9991 },
f245a28c
DM
9992 "returns" : {
9993 "items" : {
9994 "properties" : {},
9995 "type" : "object"
9996 },
9997 "links" : [
9998 {
9999 "href" : "{subdir}",
10000 "rel" : "child"
10001 }
10002 ],
10003 "type" : "array"
10004 }
10005 }
10006 },
10007 "leaf" : 0,
10008 "path" : "/nodes/{node}/clamav",
10009 "text" : "clamav"
10010 },
bb6e6e0d
DM
10011 {
10012 "children" : [
10013 {
10014 "info" : {
10015 "GET" : {
6bd70b95 10016 "allowtoken" : 1,
bb6e6e0d
DM
10017 "description" : "SpamAssassin rules status.",
10018 "method" : "GET",
10019 "name" : "rules_status",
10020 "parameters" : {
10021 "additionalProperties" : 0,
10022 "properties" : {
10023 "node" : {
10024 "description" : "The cluster node name.",
10025 "format" : "pve-node",
10026 "type" : "string",
10027 "typetext" : "<string>"
10028 }
10029 }
10030 },
10031 "permissions" : {
10032 "check" : [
10033 "admin",
10034 "audit"
10035 ]
10036 },
10037 "proxyto" : "node",
10038 "returns" : {
10039 "items" : {
10040 "properties" : {
10041 "channel" : {
10042 "type" : "string"
10043 },
10044 "last_updated" : {
10045 "optional" : 1,
10046 "type" : "integer"
10047 },
10048 "update_avail" : {
10049 "type" : "boolean"
10050 },
10051 "update_version" : {
10052 "optional" : 1,
10053 "type" : "string"
10054 },
10055 "version" : {
10056 "optional" : 1,
10057 "type" : "string"
10058 }
10059 },
10060 "type" : "object"
10061 },
10062 "type" : "array"
10063 }
10064 },
10065 "POST" : {
6bd70b95 10066 "allowtoken" : 1,
bb6e6e0d
DM
10067 "description" : "Update SpamAssassin rules.",
10068 "method" : "POST",
10069 "name" : "update_rules",
10070 "parameters" : {
10071 "additionalProperties" : 0,
10072 "properties" : {
10073 "node" : {
10074 "description" : "The cluster node name.",
10075 "format" : "pve-node",
10076 "type" : "string",
10077 "typetext" : "<string>"
10078 }
10079 }
10080 },
10081 "permissions" : {
10082 "check" : [
10083 "admin"
10084 ]
10085 },
10086 "protected" : 1,
10087 "proxyto" : "node",
10088 "returns" : {
10089 "type" : "string"
10090 }
10091 }
10092 },
10093 "leaf" : 1,
10094 "path" : "/nodes/{node}/spamassassin/rules",
10095 "text" : "rules"
10096 }
10097 ],
10098 "info" : {
10099 "GET" : {
6bd70b95 10100 "allowtoken" : 1,
bb6e6e0d
DM
10101 "description" : "Directory index.",
10102 "method" : "GET",
10103 "name" : "index",
10104 "parameters" : {
10105 "additionalProperties" : 0,
10106 "properties" : {
10107 "node" : {
10108 "description" : "The cluster node name.",
10109 "format" : "pve-node",
10110 "type" : "string",
10111 "typetext" : "<string>"
10112 }
10113 }
10114 },
10115 "permissions" : {
10116 "check" : [
10117 "admin",
10118 "audit"
10119 ]
10120 },
10121 "returns" : {
10122 "items" : {
10123 "properties" : {},
10124 "type" : "object"
10125 },
10126 "links" : [
10127 {
10128 "href" : "{subdir}",
10129 "rel" : "child"
10130 }
10131 ],
10132 "type" : "array"
10133 }
10134 }
10135 },
10136 "leaf" : 0,
10137 "path" : "/nodes/{node}/spamassassin",
10138 "text" : "spamassassin"
10139 },
410dc2c9
DM
10140 {
10141 "children" : [
10142 {
10143 "info" : {
10144 "DELETE" : {
6bd70b95 10145 "allowtoken" : 1,
410dc2c9
DM
10146 "description" : "Delete network device configuration",
10147 "method" : "DELETE",
10148 "name" : "delete_network",
10149 "parameters" : {
10150 "additionalProperties" : 0,
10151 "properties" : {
10152 "iface" : {
10153 "description" : "Network interface name.",
10154 "format" : "pve-iface",
10155 "maxLength" : 20,
10156 "minLength" : 2,
10157 "type" : "string",
10158 "typetext" : "<string>"
10159 },
10160 "node" : {
10161 "description" : "The cluster node name.",
10162 "format" : "pve-node",
10163 "type" : "string",
10164 "typetext" : "<string>"
10165 }
10166 }
10167 },
10168 "protected" : 1,
10169 "proxyto" : "node",
10170 "returns" : {
10171 "type" : "null"
10172 }
10173 },
10174 "GET" : {
6bd70b95 10175 "allowtoken" : 1,
410dc2c9
DM
10176 "description" : "Read network device configuration",
10177 "method" : "GET",
10178 "name" : "network_config",
10179 "parameters" : {
10180 "additionalProperties" : 0,
10181 "properties" : {
10182 "iface" : {
10183 "description" : "Network interface name.",
10184 "format" : "pve-iface",
10185 "maxLength" : 20,
10186 "minLength" : 2,
10187 "type" : "string",
10188 "typetext" : "<string>"
10189 },
10190 "node" : {
10191 "description" : "The cluster node name.",
10192 "format" : "pve-node",
10193 "type" : "string",
10194 "typetext" : "<string>"
10195 }
10196 }
10197 },
732d76e1
DM
10198 "permissions" : {
10199 "check" : [
10200 "admin",
10201 "audit"
10202 ]
10203 },
410dc2c9
DM
10204 "proxyto" : "node",
10205 "returns" : {
10206 "properties" : {
10207 "method" : {
10208 "type" : "string"
10209 },
10210 "type" : {
10211 "type" : "string"
10212 }
10213 },
10214 "type" : "object"
10215 }
10216 },
10217 "PUT" : {
6bd70b95 10218 "allowtoken" : 1,
410dc2c9
DM
10219 "description" : "Update network device configuration",
10220 "method" : "PUT",
10221 "name" : "update_network",
10222 "parameters" : {
10223 "additionalProperties" : 0,
10224 "properties" : {
10225 "address" : {
10226 "description" : "IP address.",
10227 "format" : "ipv4",
10228 "optional" : 1,
10229 "requires" : "netmask",
10230 "type" : "string",
10231 "typetext" : "<string>"
10232 },
10233 "address6" : {
10234 "description" : "IP address.",
10235 "format" : "ipv6",
10236 "optional" : 1,
10237 "requires" : "netmask6",
10238 "type" : "string",
10239 "typetext" : "<string>"
10240 },
10241 "autostart" : {
10242 "description" : "Automatically start interface on boot.",
10243 "optional" : 1,
10244 "type" : "boolean",
10245 "typetext" : "<boolean>"
10246 },
6bd70b95
TL
10247 "bond-primary" : {
10248 "description" : "Specify the primary interface for active-backup bond.",
10249 "format" : "pve-iface",
10250 "optional" : 1,
10251 "type" : "string",
10252 "typetext" : "<string>"
10253 },
410dc2c9
DM
10254 "bond_mode" : {
10255 "description" : "Bonding mode.",
10256 "enum" : [
10257 "balance-rr",
10258 "active-backup",
10259 "balance-xor",
10260 "broadcast",
10261 "802.3ad",
10262 "balance-tlb",
10263 "balance-alb",
10264 "balance-slb",
10265 "lacp-balance-slb",
10266 "lacp-balance-tcp"
10267 ],
10268 "optional" : 1,
10269 "type" : "string"
10270 },
10271 "bond_xmit_hash_policy" : {
10272 "description" : "Selects the transmit hash policy to use for slave selection in balance-xor and 802.3ad modes.",
10273 "enum" : [
10274 "layer2",
10275 "layer2+3",
10276 "layer3+4"
10277 ],
10278 "optional" : 1,
10279 "type" : "string"
10280 },
10281 "bridge_ports" : {
10282 "description" : "Specify the iterfaces you want to add to your bridge.",
10283 "format" : "pve-iface-list",
10284 "optional" : 1,
10285 "type" : "string",
10286 "typetext" : "<string>"
10287 },
10288 "bridge_vlan_aware" : {
10289 "description" : "Enable bridge vlan support.",
10290 "optional" : 1,
10291 "type" : "boolean",
10292 "typetext" : "<boolean>"
10293 },
241ac83c
TL
10294 "cidr" : {
10295 "description" : "IPv4 CIDR.",
10296 "format" : "CIDRv4",
10297 "optional" : 1,
10298 "type" : "string",
10299 "typetext" : "<string>"
10300 },
10301 "cidr6" : {
10302 "description" : "IPv6 CIDR.",
10303 "format" : "CIDRv6",
10304 "optional" : 1,
10305 "type" : "string",
10306 "typetext" : "<string>"
10307 },
410dc2c9
DM
10308 "comments" : {
10309 "description" : "Comments",
10310 "optional" : 1,
10311 "type" : "string",
10312 "typetext" : "<string>"
10313 },
10314 "comments6" : {
10315 "description" : "Comments",
10316 "optional" : 1,
10317 "type" : "string",
10318 "typetext" : "<string>"
10319 },
10320 "delete" : {
10321 "description" : "A list of settings you want to delete.",
10322 "format" : "pve-configid-list",
10323 "optional" : 1,
10324 "type" : "string",
10325 "typetext" : "<string>"
10326 },
10327 "gateway" : {
10328 "description" : "Default gateway address.",
10329 "format" : "ipv4",
10330 "optional" : 1,
10331 "type" : "string",
10332 "typetext" : "<string>"
10333 },
10334 "gateway6" : {
10335 "description" : "Default ipv6 gateway address.",
10336 "format" : "ipv6",
10337 "optional" : 1,
10338 "type" : "string",
10339 "typetext" : "<string>"
10340 },
10341 "iface" : {
10342 "description" : "Network interface name.",
10343 "format" : "pve-iface",
10344 "maxLength" : 20,
10345 "minLength" : 2,
10346 "type" : "string",
10347 "typetext" : "<string>"
10348 },
6bd70b95
TL
10349 "mtu" : {
10350 "description" : "MTU.",
10351 "maximum" : 65520,
10352 "minimum" : 1280,
10353 "optional" : 1,
10354 "type" : "integer",
10355 "typetext" : "<integer> (1280 - 65520)"
10356 },
410dc2c9
DM
10357 "netmask" : {
10358 "description" : "Network mask.",
10359 "format" : "ipv4mask",
10360 "optional" : 1,
10361 "requires" : "address",
10362 "type" : "string",
10363 "typetext" : "<string>"
10364 },
10365 "netmask6" : {
10366 "description" : "Network mask.",
10367 "maximum" : 128,
10368 "minimum" : 0,
10369 "optional" : 1,
10370 "requires" : "address6",
10371 "type" : "integer",
10372 "typetext" : "<integer> (0 - 128)"
10373 },
10374 "node" : {
10375 "description" : "The cluster node name.",
10376 "format" : "pve-node",
10377 "type" : "string",
10378 "typetext" : "<string>"
10379 },
10380 "ovs_bonds" : {
10381 "description" : "Specify the interfaces used by the bonding device.",
10382 "format" : "pve-iface-list",
10383 "optional" : 1,
10384 "type" : "string",
10385 "typetext" : "<string>"
10386 },
10387 "ovs_bridge" : {
10388 "description" : "The OVS bridge associated with a OVS port. This is required when you create an OVS port.",
10389 "format" : "pve-iface",
10390 "optional" : 1,
10391 "type" : "string",
10392 "typetext" : "<string>"
10393 },
10394 "ovs_options" : {
10395 "description" : "OVS interface options.",
10396 "maxLength" : 1024,
10397 "optional" : 1,
10398 "type" : "string",
10399 "typetext" : "<string>"
10400 },
10401 "ovs_ports" : {
10402 "description" : "Specify the iterfaces you want to add to your bridge.",
10403 "format" : "pve-iface-list",
10404 "optional" : 1,
10405 "type" : "string",
10406 "typetext" : "<string>"
10407 },
10408 "ovs_tag" : {
10409 "description" : "Specify a VLan tag (used by OVSPort, OVSIntPort, OVSBond)",
10410 "maximum" : 4094,
10411 "minimum" : 1,
10412 "optional" : 1,
10413 "type" : "integer",
10414 "typetext" : "<integer> (1 - 4094)"
10415 },
10416 "slaves" : {
10417 "description" : "Specify the interfaces used by the bonding device.",
10418 "format" : "pve-iface-list",
10419 "optional" : 1,
10420 "type" : "string",
10421 "typetext" : "<string>"
10422 },
10423 "type" : {
10424 "description" : "Network interface type",
10425 "enum" : [
10426 "bridge",
10427 "bond",
10428 "eth",
10429 "alias",
10430 "vlan",
10431 "OVSBridge",
10432 "OVSBond",
10433 "OVSPort",
10434 "OVSIntPort",
10435 "unknown"
10436 ],
10437 "type" : "string"
6bd70b95
TL
10438 },
10439 "vlan-id" : {
10440 "description" : "vlan-id for a custom named vlan interface (ifupdown2 only).",
10441 "maximum" : 4094,
10442 "minimum" : 1,
10443 "optional" : 1,
10444 "type" : "integer",
10445 "typetext" : "<integer> (1 - 4094)"
10446 },
10447 "vlan-raw-device" : {
10448 "description" : "Specify the raw interface for the vlan interface.",
10449 "format" : "pve-iface",
10450 "optional" : 1,
10451 "type" : "string",
10452 "typetext" : "<string>"
410dc2c9
DM
10453 }
10454 }
10455 },
10456 "protected" : 1,
10457 "proxyto" : "node",
10458 "returns" : {
10459 "type" : "null"
10460 }
10461 }
10462 },
10463 "leaf" : 1,
10464 "path" : "/nodes/{node}/network/{iface}",
10465 "text" : "{iface}"
10466 }
10467 ],
10468 "info" : {
10469 "DELETE" : {
6bd70b95 10470 "allowtoken" : 1,
410dc2c9
DM
10471 "description" : "Revert network configuration changes.",
10472 "method" : "DELETE",
10473 "name" : "revert_network_changes",
10474 "parameters" : {
10475 "additionalProperties" : 0,
10476 "properties" : {
10477 "node" : {
10478 "description" : "The cluster node name.",
10479 "format" : "pve-node",
10480 "type" : "string",
10481 "typetext" : "<string>"
10482 }
10483 }
10484 },
10485 "protected" : 1,
10486 "proxyto" : "node",
10487 "returns" : {
10488 "type" : "null"
10489 }
10490 },
10491 "GET" : {
6bd70b95 10492 "allowtoken" : 1,
410dc2c9
DM
10493 "description" : "List available networks",
10494 "method" : "GET",
10495 "name" : "index",
10496 "parameters" : {
10497 "additionalProperties" : 0,
10498 "properties" : {
10499 "node" : {
10500 "description" : "The cluster node name.",
10501 "format" : "pve-node",
10502 "type" : "string",
10503 "typetext" : "<string>"
10504 },
10505 "type" : {
10506 "description" : "Only list specific interface types.",
10507 "enum" : [
10508 "bridge",
10509 "bond",
10510 "eth",
10511 "alias",
10512 "vlan",
10513 "OVSBridge",
10514 "OVSBond",
10515 "OVSPort",
10516 "OVSIntPort",
10517 "any_bridge"
10518 ],
10519 "optional" : 1,
10520 "type" : "string"
10521 }
10522 }
10523 },
732d76e1
DM
10524 "permissions" : {
10525 "check" : [
10526 "admin",
10527 "audit"
10528 ]
10529 },
410dc2c9
DM
10530 "proxyto" : "node",
10531 "returns" : {
10532 "items" : {
10533 "properties" : {},
10534 "type" : "object"
10535 },
10536 "links" : [
10537 {
10538 "href" : "{iface}",
10539 "rel" : "child"
10540 }
10541 ],
10542 "type" : "array"
10543 }
10544 },
10545 "POST" : {
6bd70b95 10546 "allowtoken" : 1,
410dc2c9
DM
10547 "description" : "Create network device configuration",
10548 "method" : "POST",
10549 "name" : "create_network",
10550 "parameters" : {
10551 "additionalProperties" : 0,
10552 "properties" : {
10553 "address" : {
10554 "description" : "IP address.",
10555 "format" : "ipv4",
10556 "optional" : 1,
10557 "requires" : "netmask",
10558 "type" : "string",
10559 "typetext" : "<string>"
10560 },
10561 "address6" : {
10562 "description" : "IP address.",
10563 "format" : "ipv6",
10564 "optional" : 1,
10565 "requires" : "netmask6",
10566 "type" : "string",
10567 "typetext" : "<string>"
10568 },
10569 "autostart" : {
10570 "description" : "Automatically start interface on boot.",
10571 "optional" : 1,
10572 "type" : "boolean",
10573 "typetext" : "<boolean>"
10574 },
6bd70b95
TL
10575 "bond-primary" : {
10576 "description" : "Specify the primary interface for active-backup bond.",
10577 "format" : "pve-iface",
10578 "optional" : 1,
10579 "type" : "string",
10580 "typetext" : "<string>"
10581 },
410dc2c9
DM
10582 "bond_mode" : {
10583 "description" : "Bonding mode.",
10584 "enum" : [
10585 "balance-rr",
10586 "active-backup",
10587 "balance-xor",
10588 "broadcast",
10589 "802.3ad",
10590 "balance-tlb",
10591 "balance-alb",
10592 "balance-slb",
10593 "lacp-balance-slb",
10594 "lacp-balance-tcp"
10595 ],
10596 "optional" : 1,
10597 "type" : "string"
10598 },
10599 "bond_xmit_hash_policy" : {
10600 "description" : "Selects the transmit hash policy to use for slave selection in balance-xor and 802.3ad modes.",
10601 "enum" : [
10602 "layer2",
10603 "layer2+3",
10604 "layer3+4"
10605 ],
10606 "optional" : 1,
10607 "type" : "string"
10608 },
10609 "bridge_ports" : {
10610 "description" : "Specify the iterfaces you want to add to your bridge.",
10611 "format" : "pve-iface-list",
10612 "optional" : 1,
10613 "type" : "string",
10614 "typetext" : "<string>"
10615 },
10616 "bridge_vlan_aware" : {
10617 "description" : "Enable bridge vlan support.",
10618 "optional" : 1,
10619 "type" : "boolean",
10620 "typetext" : "<boolean>"
10621 },
241ac83c
TL
10622 "cidr" : {
10623 "description" : "IPv4 CIDR.",
10624 "format" : "CIDRv4",
10625 "optional" : 1,
10626 "type" : "string",
10627 "typetext" : "<string>"
10628 },
10629 "cidr6" : {
10630 "description" : "IPv6 CIDR.",
10631 "format" : "CIDRv6",
10632 "optional" : 1,
10633 "type" : "string",
10634 "typetext" : "<string>"
10635 },
410dc2c9
DM
10636 "comments" : {
10637 "description" : "Comments",
10638 "optional" : 1,
10639 "type" : "string",
10640 "typetext" : "<string>"
10641 },
10642 "comments6" : {
10643 "description" : "Comments",
10644 "optional" : 1,
10645 "type" : "string",
10646 "typetext" : "<string>"
10647 },
10648 "gateway" : {
10649 "description" : "Default gateway address.",
10650 "format" : "ipv4",
10651 "optional" : 1,
10652 "type" : "string",
10653 "typetext" : "<string>"
10654 },
10655 "gateway6" : {
10656 "description" : "Default ipv6 gateway address.",
10657 "format" : "ipv6",
10658 "optional" : 1,
10659 "type" : "string",
10660 "typetext" : "<string>"
10661 },
10662 "iface" : {
10663 "description" : "Network interface name.",
10664 "format" : "pve-iface",
10665 "maxLength" : 20,
10666 "minLength" : 2,
10667 "type" : "string",
10668 "typetext" : "<string>"
10669 },
6bd70b95
TL
10670 "mtu" : {
10671 "description" : "MTU.",
10672 "maximum" : 65520,
10673 "minimum" : 1280,
10674 "optional" : 1,
10675 "type" : "integer",
10676 "typetext" : "<integer> (1280 - 65520)"
10677 },
410dc2c9
DM
10678 "netmask" : {
10679 "description" : "Network mask.",
10680 "format" : "ipv4mask",
10681 "optional" : 1,
10682 "requires" : "address",
10683 "type" : "string",
10684 "typetext" : "<string>"
10685 },
10686 "netmask6" : {
10687 "description" : "Network mask.",
10688 "maximum" : 128,
10689 "minimum" : 0,
10690 "optional" : 1,
10691 "requires" : "address6",
10692 "type" : "integer",
10693 "typetext" : "<integer> (0 - 128)"
10694 },
10695 "node" : {
10696 "description" : "The cluster node name.",
10697 "format" : "pve-node",
10698 "type" : "string",
10699 "typetext" : "<string>"
10700 },
10701 "ovs_bonds" : {
10702 "description" : "Specify the interfaces used by the bonding device.",
10703 "format" : "pve-iface-list",
10704 "optional" : 1,
10705 "type" : "string",
10706 "typetext" : "<string>"
10707 },
10708 "ovs_bridge" : {
10709 "description" : "The OVS bridge associated with a OVS port. This is required when you create an OVS port.",
10710 "format" : "pve-iface",
10711 "optional" : 1,
10712 "type" : "string",
10713 "typetext" : "<string>"
10714 },
10715 "ovs_options" : {
10716 "description" : "OVS interface options.",
10717 "maxLength" : 1024,
10718 "optional" : 1,
10719 "type" : "string",
10720 "typetext" : "<string>"
10721 },
10722 "ovs_ports" : {
10723 "description" : "Specify the iterfaces you want to add to your bridge.",
10724 "format" : "pve-iface-list",
10725 "optional" : 1,
10726 "type" : "string",
10727 "typetext" : "<string>"
10728 },
10729 "ovs_tag" : {
10730 "description" : "Specify a VLan tag (used by OVSPort, OVSIntPort, OVSBond)",
10731 "maximum" : 4094,
10732 "minimum" : 1,
10733 "optional" : 1,
10734 "type" : "integer",
10735 "typetext" : "<integer> (1 - 4094)"
10736 },
10737 "slaves" : {
10738 "description" : "Specify the interfaces used by the bonding device.",
10739 "format" : "pve-iface-list",
10740 "optional" : 1,
10741 "type" : "string",
10742 "typetext" : "<string>"
10743 },
10744 "type" : {
10745 "description" : "Network interface type",
10746 "enum" : [
10747 "bridge",
10748 "bond",
10749 "eth",
10750 "alias",
10751 "vlan",
10752 "OVSBridge",
10753 "OVSBond",
10754 "OVSPort",
10755 "OVSIntPort",
10756 "unknown"
10757 ],
10758 "type" : "string"
6bd70b95
TL
10759 },
10760 "vlan-id" : {
10761 "description" : "vlan-id for a custom named vlan interface (ifupdown2 only).",
10762 "maximum" : 4094,
10763 "minimum" : 1,
10764 "optional" : 1,
10765 "type" : "integer",
10766 "typetext" : "<integer> (1 - 4094)"
10767 },
10768 "vlan-raw-device" : {
10769 "description" : "Specify the raw interface for the vlan interface.",
10770 "format" : "pve-iface",
10771 "optional" : 1,
10772 "type" : "string",
10773 "typetext" : "<string>"
410dc2c9
DM
10774 }
10775 }
10776 },
10777 "protected" : 1,
10778 "proxyto" : "node",
10779 "returns" : {
10780 "type" : "null"
10781 }
10782 }
10783 },
10784 "leaf" : 0,
10785 "path" : "/nodes/{node}/network",
10786 "text" : "network"
10787 },
10788 {
10789 "children" : [
10790 {
10791 "children" : [
10792 {
10793 "info" : {
10794 "GET" : {
6bd70b95 10795 "allowtoken" : 1,
410dc2c9
DM
10796 "description" : "Read task log.",
10797 "method" : "GET",
10798 "name" : "read_task_log",
10799 "parameters" : {
10800 "additionalProperties" : 0,
10801 "properties" : {
10802 "limit" : {
10803 "minimum" : 0,
10804 "optional" : 1,
10805 "type" : "integer",
10806 "typetext" : "<integer> (0 - N)"
10807 },
10808 "node" : {
10809 "description" : "The cluster node name.",
10810 "format" : "pve-node",
10811 "type" : "string",
10812 "typetext" : "<string>"
10813 },
10814 "start" : {
10815 "minimum" : 0,
10816 "optional" : 1,
10817 "type" : "integer",
10818 "typetext" : "<integer> (0 - N)"
10819 },
10820 "upid" : {
10821 "type" : "string",
10822 "typetext" : "<string>"
10823 }
10824 }
10825 },
732d76e1
DM
10826 "permissions" : {
10827 "check" : [
10828 "admin",
10829 "audit"
10830 ]
10831 },
410dc2c9
DM
10832 "protected" : 1,
10833 "proxyto" : "node",
10834 "returns" : {
10835 "items" : {
10836 "properties" : {
10837 "n" : {
10838 "description" : "Line number",
10839 "type" : "integer"
10840 },
10841 "t" : {
10842 "description" : "Line text",
10843 "type" : "string"
10844 }
10845 },
10846 "type" : "object"
10847 },
10848 "type" : "array"
10849 }
10850 }
10851 },
10852 "leaf" : 1,
10853 "path" : "/nodes/{node}/tasks/{upid}/log",
10854 "text" : "log"
10855 },
10856 {
10857 "info" : {
10858 "GET" : {
6bd70b95 10859 "allowtoken" : 1,
410dc2c9
DM
10860 "description" : "Read task status.",
10861 "method" : "GET",
10862 "name" : "read_task_status",
10863 "parameters" : {
10864 "additionalProperties" : 0,
10865 "properties" : {
10866 "node" : {
10867 "description" : "The cluster node name.",
10868 "format" : "pve-node",
10869 "type" : "string",
10870 "typetext" : "<string>"
10871 },
10872 "upid" : {
10873 "type" : "string",
10874 "typetext" : "<string>"
10875 }
10876 }
10877 },
732d76e1
DM
10878 "permissions" : {
10879 "check" : [
10880 "admin",
10881 "audit"
10882 ]
10883 },
410dc2c9
DM
10884 "protected" : 1,
10885 "proxyto" : "node",
10886 "returns" : {
10887 "properties" : {
10888 "pid" : {
10889 "type" : "integer"
10890 },
10891 "status" : {
10892 "enum" : [
10893 "running",
10894 "stopped"
10895 ],
10896 "type" : "string"
10897 }
10898 },
10899 "type" : "object"
10900 }
10901 }
10902 },
10903 "leaf" : 1,
10904 "path" : "/nodes/{node}/tasks/{upid}/status",
10905 "text" : "status"
10906 }
10907 ],
10908 "info" : {
10909 "DELETE" : {
6bd70b95 10910 "allowtoken" : 1,
410dc2c9
DM
10911 "description" : "Stop a task.",
10912 "method" : "DELETE",
10913 "name" : "stop_task",
10914 "parameters" : {
10915 "additionalProperties" : 0,
10916 "properties" : {
10917 "node" : {
10918 "description" : "The cluster node name.",
10919 "format" : "pve-node",
10920 "type" : "string",
10921 "typetext" : "<string>"
10922 },
10923 "upid" : {
10924 "type" : "string",
10925 "typetext" : "<string>"
10926 }
10927 }
10928 },
732d76e1
DM
10929 "permissions" : {
10930 "check" : [
10931 "admin"
10932 ]
10933 },
410dc2c9
DM
10934 "protected" : 1,
10935 "proxyto" : "node",
10936 "returns" : {
10937 "type" : "null"
10938 }
10939 },
10940 "GET" : {
6bd70b95 10941 "allowtoken" : 1,
410dc2c9
DM
10942 "description" : "",
10943 "method" : "GET",
10944 "name" : "upid_index",
10945 "parameters" : {
10946 "additionalProperties" : 0,
10947 "properties" : {
10948 "node" : {
10949 "description" : "The cluster node name.",
10950 "format" : "pve-node",
10951 "type" : "string",
10952 "typetext" : "<string>"
10953 },
10954 "upid" : {
10955 "type" : "string",
10956 "typetext" : "<string>"
10957 }
10958 }
10959 },
732d76e1
DM
10960 "permissions" : {
10961 "check" : [
10962 "admin",
10963 "audit"
10964 ]
10965 },
410dc2c9
DM
10966 "returns" : {
10967 "items" : {
10968 "properties" : {},
10969 "type" : "object"
10970 },
10971 "links" : [
10972 {
10973 "href" : "{name}",
10974 "rel" : "child"
10975 }
10976 ],
10977 "type" : "array"
10978 }
10979 }
10980 },
10981 "leaf" : 0,
10982 "path" : "/nodes/{node}/tasks/{upid}",
10983 "text" : "{upid}"
10984 }
10985 ],
10986 "info" : {
10987 "GET" : {
6bd70b95 10988 "allowtoken" : 1,
410dc2c9
DM
10989 "description" : "Read task list for one node (finished tasks).",
10990 "method" : "GET",
10991 "name" : "node_tasks",
10992 "parameters" : {
10993 "additionalProperties" : 0,
10994 "properties" : {
10995 "errors" : {
10996 "optional" : 1,
10997 "type" : "boolean",
10998 "typetext" : "<boolean>"
10999 },
11000 "limit" : {
11001 "minimum" : 0,
11002 "optional" : 1,
11003 "type" : "integer",
11004 "typetext" : "<integer> (0 - N)"
11005 },
11006 "node" : {
11007 "description" : "The cluster node name.",
11008 "format" : "pve-node",
11009 "type" : "string",
11010 "typetext" : "<string>"
11011 },
11012 "start" : {
11013 "minimum" : 0,
11014 "optional" : 1,
11015 "type" : "integer",
11016 "typetext" : "<integer> (0 - N)"
11017 },
11018 "userfilter" : {
11019 "optional" : 1,
11020 "type" : "string",
11021 "typetext" : "<string>"
11022 }
11023 }
11024 },
732d76e1
DM
11025 "permissions" : {
11026 "check" : [
11027 "admin",
11028 "audit"
11029 ]
11030 },
410dc2c9
DM
11031 "proxyto" : "node",
11032 "returns" : {
11033 "items" : {
11034 "properties" : {
11035 "upid" : {
11036 "type" : "string"
11037 }
11038 },
11039 "type" : "object"
11040 },
11041 "links" : [
11042 {
11043 "href" : "{upid}",
11044 "rel" : "child"
11045 }
11046 ],
11047 "type" : "array"
11048 }
11049 }
11050 },
11051 "leaf" : 0,
11052 "path" : "/nodes/{node}/tasks",
11053 "text" : "tasks"
11054 },
11055 {
11056 "children" : [
11057 {
11058 "children" : [
11059 {
11060 "info" : {
11061 "GET" : {
6bd70b95 11062 "allowtoken" : 1,
410dc2c9
DM
11063 "description" : "Read service properties",
11064 "method" : "GET",
11065 "name" : "service_state",
11066 "parameters" : {
11067 "additionalProperties" : 0,
11068 "properties" : {
11069 "node" : {
11070 "description" : "The cluster node name.",
11071 "format" : "pve-node",
11072 "type" : "string",
11073 "typetext" : "<string>"
11074 },
11075 "service" : {
11076 "description" : "Service ID",
11077 "enum" : [
a55e94a6
DM
11078 "clamav-daemon",
11079 "clamav-freshclam",
732d76e1 11080 "fetchmail",
410dc2c9
DM
11081 "pmgproxy",
11082 "pmgdaemon",
a55e94a6 11083 "pmgpolicy",
410dc2c9 11084 "pmg-smtp-filter",
d7cd791b
DM
11085 "pmgtunnel",
11086 "pmgmirror",
11087 "ssh",
11088 "rsyslog",
410dc2c9 11089 "postfix",
d7cd791b 11090 "postgres",
a55e94a6
DM
11091 "systemd-timesyncd",
11092 "pmg-hourly",
d7cd791b 11093 "pmg-daily",
9fda36b0 11094 "pmgreport",
d7cd791b 11095 "pmgspamreport"
410dc2c9
DM
11096 ],
11097 "type" : "string"
11098 }
11099 }
11100 },
732d76e1
DM
11101 "permissions" : {
11102 "check" : [
11103 "admin",
11104 "audit"
11105 ]
11106 },
410dc2c9
DM
11107 "protected" : 1,
11108 "proxyto" : "node",
11109 "returns" : {
410dc2c9
DM
11110 "type" : "object"
11111 }
11112 }
11113 },
11114 "leaf" : 1,
11115 "path" : "/nodes/{node}/services/{service}/state",
11116 "text" : "state"
11117 },
11118 {
11119 "info" : {
11120 "POST" : {
6bd70b95 11121 "allowtoken" : 1,
410dc2c9
DM
11122 "description" : "Start service.",
11123 "method" : "POST",
11124 "name" : "service_start",
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 "service" : {
11135 "description" : "Service ID",
11136 "enum" : [
a55e94a6
DM
11137 "clamav-daemon",
11138 "clamav-freshclam",
732d76e1 11139 "fetchmail",
410dc2c9
DM
11140 "pmgproxy",
11141 "pmgdaemon",
a55e94a6 11142 "pmgpolicy",
410dc2c9 11143 "pmg-smtp-filter",
d7cd791b
DM
11144 "pmgtunnel",
11145 "pmgmirror",
11146 "ssh",
11147 "rsyslog",
410dc2c9 11148 "postfix",
d7cd791b 11149 "postgres",
a55e94a6
DM
11150 "systemd-timesyncd",
11151 "pmg-hourly",
d7cd791b 11152 "pmg-daily",
9fda36b0 11153 "pmgreport",
d7cd791b 11154 "pmgspamreport"
410dc2c9
DM
11155 ],
11156 "type" : "string"
11157 }
11158 }
11159 },
732d76e1
DM
11160 "permissions" : {
11161 "check" : [
11162 "admin"
11163 ]
11164 },
410dc2c9
DM
11165 "protected" : 1,
11166 "proxyto" : "node",
11167 "returns" : {
11168 "type" : "string"
11169 }
11170 }
11171 },
11172 "leaf" : 1,
11173 "path" : "/nodes/{node}/services/{service}/start",
11174 "text" : "start"
11175 },
11176 {
11177 "info" : {
11178 "POST" : {
6bd70b95 11179 "allowtoken" : 1,
410dc2c9
DM
11180 "description" : "Stop service.",
11181 "method" : "POST",
11182 "name" : "service_stop",
11183 "parameters" : {
11184 "additionalProperties" : 0,
11185 "properties" : {
11186 "node" : {
11187 "description" : "The cluster node name.",
11188 "format" : "pve-node",
11189 "type" : "string",
11190 "typetext" : "<string>"
11191 },
11192 "service" : {
11193 "description" : "Service ID",
11194 "enum" : [
a55e94a6
DM
11195 "clamav-daemon",
11196 "clamav-freshclam",
732d76e1 11197 "fetchmail",
410dc2c9
DM
11198 "pmgproxy",
11199 "pmgdaemon",
a55e94a6 11200 "pmgpolicy",
410dc2c9 11201 "pmg-smtp-filter",
d7cd791b
DM
11202 "pmgtunnel",
11203 "pmgmirror",
11204 "ssh",
11205 "rsyslog",
410dc2c9 11206 "postfix",
d7cd791b 11207 "postgres",
a55e94a6
DM
11208 "systemd-timesyncd",
11209 "pmg-hourly",
d7cd791b 11210 "pmg-daily",
9fda36b0 11211 "pmgreport",
d7cd791b 11212 "pmgspamreport"
410dc2c9
DM
11213 ],
11214 "type" : "string"
11215 }
11216 }
11217 },
732d76e1
DM
11218 "permissions" : {
11219 "check" : [
11220 "admin"
11221 ]
11222 },
410dc2c9
DM
11223 "protected" : 1,
11224 "proxyto" : "node",
11225 "returns" : {
11226 "type" : "string"
11227 }
11228 }
11229 },
11230 "leaf" : 1,
11231 "path" : "/nodes/{node}/services/{service}/stop",
11232 "text" : "stop"
11233 },
11234 {
11235 "info" : {
11236 "POST" : {
6bd70b95 11237 "allowtoken" : 1,
410dc2c9
DM
11238 "description" : "Restart service.",
11239 "method" : "POST",
11240 "name" : "service_restart",
11241 "parameters" : {
11242 "additionalProperties" : 0,
11243 "properties" : {
11244 "node" : {
11245 "description" : "The cluster node name.",
11246 "format" : "pve-node",
11247 "type" : "string",
11248 "typetext" : "<string>"
11249 },
11250 "service" : {
11251 "description" : "Service ID",
11252 "enum" : [
a55e94a6
DM
11253 "clamav-daemon",
11254 "clamav-freshclam",
732d76e1 11255 "fetchmail",
410dc2c9
DM
11256 "pmgproxy",
11257 "pmgdaemon",
a55e94a6 11258 "pmgpolicy",
410dc2c9 11259 "pmg-smtp-filter",
d7cd791b
DM
11260 "pmgtunnel",
11261 "pmgmirror",
11262 "ssh",
11263 "rsyslog",
410dc2c9 11264 "postfix",
d7cd791b 11265 "postgres",
a55e94a6
DM
11266 "systemd-timesyncd",
11267 "pmg-hourly",
d7cd791b 11268 "pmg-daily",
9fda36b0 11269 "pmgreport",
d7cd791b 11270 "pmgspamreport"
410dc2c9
DM
11271 ],
11272 "type" : "string"
11273 }
11274 }
11275 },
732d76e1
DM
11276 "permissions" : {
11277 "check" : [
11278 "admin"
11279 ]
11280 },
410dc2c9
DM
11281 "protected" : 1,
11282 "proxyto" : "node",
11283 "returns" : {
11284 "type" : "string"
11285 }
11286 }
11287 },
11288 "leaf" : 1,
11289 "path" : "/nodes/{node}/services/{service}/restart",
11290 "text" : "restart"
11291 },
11292 {
11293 "info" : {
11294 "POST" : {
6bd70b95 11295 "allowtoken" : 1,
410dc2c9
DM
11296 "description" : "Reload service.",
11297 "method" : "POST",
11298 "name" : "service_reload",
11299 "parameters" : {
11300 "additionalProperties" : 0,
11301 "properties" : {
11302 "node" : {
11303 "description" : "The cluster node name.",
11304 "format" : "pve-node",
11305 "type" : "string",
11306 "typetext" : "<string>"
11307 },
11308 "service" : {
11309 "description" : "Service ID",
11310 "enum" : [
a55e94a6
DM
11311 "clamav-daemon",
11312 "clamav-freshclam",
732d76e1 11313 "fetchmail",
410dc2c9
DM
11314 "pmgproxy",
11315 "pmgdaemon",
a55e94a6 11316 "pmgpolicy",
410dc2c9 11317 "pmg-smtp-filter",
d7cd791b
DM
11318 "pmgtunnel",
11319 "pmgmirror",
11320 "ssh",
11321 "rsyslog",
410dc2c9 11322 "postfix",
d7cd791b 11323 "postgres",
a55e94a6
DM
11324 "systemd-timesyncd",
11325 "pmg-hourly",
d7cd791b 11326 "pmg-daily",
9fda36b0 11327 "pmgreport",
d7cd791b 11328 "pmgspamreport"
410dc2c9
DM
11329 ],
11330 "type" : "string"
11331 }
11332 }
11333 },
732d76e1
DM
11334 "permissions" : {
11335 "check" : [
11336 "admin"
11337 ]
11338 },
410dc2c9
DM
11339 "protected" : 1,
11340 "proxyto" : "node",
11341 "returns" : {
11342 "type" : "string"
11343 }
11344 }
11345 },
11346 "leaf" : 1,
11347 "path" : "/nodes/{node}/services/{service}/reload",
11348 "text" : "reload"
11349 }
11350 ],
11351 "info" : {
11352 "GET" : {
6bd70b95 11353 "allowtoken" : 1,
410dc2c9
DM
11354 "description" : "Directory index",
11355 "method" : "GET",
11356 "name" : "srvcmdidx",
11357 "parameters" : {
11358 "additionalProperties" : 0,
11359 "properties" : {
11360 "node" : {
11361 "description" : "The cluster node name.",
11362 "format" : "pve-node",
11363 "type" : "string",
11364 "typetext" : "<string>"
11365 },
11366 "service" : {
11367 "description" : "Service ID",
11368 "enum" : [
a55e94a6
DM
11369 "clamav-daemon",
11370 "clamav-freshclam",
732d76e1 11371 "fetchmail",
410dc2c9
DM
11372 "pmgproxy",
11373 "pmgdaemon",
a55e94a6 11374 "pmgpolicy",
410dc2c9 11375 "pmg-smtp-filter",
d7cd791b
DM
11376 "pmgtunnel",
11377 "pmgmirror",
11378 "ssh",
11379 "rsyslog",
410dc2c9 11380 "postfix",
d7cd791b 11381 "postgres",
a55e94a6
DM
11382 "systemd-timesyncd",
11383 "pmg-hourly",
d7cd791b 11384 "pmg-daily",
9fda36b0 11385 "pmgreport",
d7cd791b 11386 "pmgspamreport"
410dc2c9
DM
11387 ],
11388 "type" : "string"
11389 }
11390 }
11391 },
732d76e1
DM
11392 "permissions" : {
11393 "check" : [
11394 "admin",
11395 "audit"
11396 ]
11397 },
410dc2c9
DM
11398 "returns" : {
11399 "items" : {
11400 "properties" : {
11401 "subdir" : {
11402 "type" : "string"
11403 }
11404 },
11405 "type" : "object"
11406 },
11407 "links" : [
11408 {
11409 "href" : "{subdir}",
11410 "rel" : "child"
11411 }
11412 ],
11413 "type" : "array"
11414 }
11415 }
11416 },
9fda36b0
DM
11417 "leaf" : 0,
11418 "path" : "/nodes/{node}/services/{service}",
11419 "text" : "{service}"
11420 }
11421 ],
11422 "info" : {
11423 "GET" : {
6bd70b95 11424 "allowtoken" : 1,
9fda36b0
DM
11425 "description" : "Service list.",
11426 "method" : "GET",
11427 "name" : "index",
11428 "parameters" : {
11429 "additionalProperties" : 0,
11430 "properties" : {
11431 "node" : {
11432 "description" : "The cluster node name.",
11433 "format" : "pve-node",
11434 "type" : "string",
11435 "typetext" : "<string>"
11436 }
11437 }
11438 },
732d76e1
DM
11439 "permissions" : {
11440 "check" : [
11441 "admin",
11442 "audit"
11443 ]
11444 },
9fda36b0
DM
11445 "protected" : 1,
11446 "proxyto" : "node",
11447 "returns" : {
11448 "items" : {
11449 "properties" : {},
11450 "type" : "object"
11451 },
11452 "links" : [
11453 {
11454 "href" : "{service}",
11455 "rel" : "child"
11456 }
11457 ],
11458 "type" : "array"
11459 }
11460 }
11461 },
11462 "leaf" : 0,
11463 "path" : "/nodes/{node}/services",
11464 "text" : "services"
11465 },
11466 {
11467 "info" : {
11468 "GET" : {
6bd70b95 11469 "allowtoken" : 1,
9fda36b0
DM
11470 "description" : "Read subscription info.",
11471 "method" : "GET",
11472 "name" : "get",
11473 "parameters" : {
11474 "additionalProperties" : 0,
11475 "properties" : {
11476 "node" : {
11477 "description" : "The cluster node name.",
11478 "format" : "pve-node",
11479 "type" : "string",
11480 "typetext" : "<string>"
11481 }
11482 }
11483 },
11484 "permissions" : {
11485 "check" : [
11486 "admin",
11487 "qmanager",
11488 "audit",
11489 "quser"
11490 ]
11491 },
11492 "proxyto" : "node",
11493 "returns" : {
11494 "type" : "object"
11495 }
732d76e1
DM
11496 },
11497 "POST" : {
6bd70b95 11498 "allowtoken" : 1,
732d76e1
DM
11499 "description" : "Update subscription info.",
11500 "method" : "POST",
11501 "name" : "update",
11502 "parameters" : {
11503 "additionalProperties" : 0,
11504 "properties" : {
11505 "force" : {
11506 "default" : 0,
11507 "description" : "Always connect to server, even if we have up to date info inside local cache.",
11508 "optional" : 1,
11509 "type" : "boolean",
11510 "typetext" : "<boolean>"
11511 },
11512 "node" : {
11513 "description" : "The cluster node name.",
11514 "format" : "pve-node",
11515 "type" : "string",
11516 "typetext" : "<string>"
11517 }
11518 }
11519 },
11520 "permissions" : {
11521 "check" : [
11522 "admin"
11523 ]
11524 },
11525 "protected" : 1,
11526 "proxyto" : "node",
11527 "returns" : {
11528 "type" : "null"
11529 }
11530 },
11531 "PUT" : {
6bd70b95 11532 "allowtoken" : 1,
732d76e1
DM
11533 "description" : "Set subscription key.",
11534 "method" : "PUT",
11535 "name" : "set",
11536 "parameters" : {
11537 "additionalProperties" : 0,
11538 "properties" : {
11539 "key" : {
11540 "description" : "Proxmox Mail Gateway subscription key",
11541 "maxLength" : 32,
11542 "pattern" : "pmg([cbsp])-[0-9a-f]{10}",
11543 "type" : "string"
11544 },
11545 "node" : {
11546 "description" : "The cluster node name.",
11547 "format" : "pve-node",
11548 "type" : "string",
11549 "typetext" : "<string>"
11550 }
11551 }
11552 },
11553 "protected" : 1,
11554 "proxyto" : "node",
11555 "returns" : {
11556 "type" : "null"
11557 }
9fda36b0
DM
11558 }
11559 },
11560 "leaf" : 1,
11561 "path" : "/nodes/{node}/subscription",
11562 "text" : "subscription"
11563 },
11564 {
11565 "children" : [
11566 {
11567 "info" : {
11568 "GET" : {
6bd70b95 11569 "allowtoken" : 1,
9fda36b0
DM
11570 "description" : "List available updates.",
11571 "method" : "GET",
11572 "name" : "list_updates",
11573 "parameters" : {
11574 "additionalProperties" : 0,
11575 "properties" : {
11576 "node" : {
11577 "description" : "The cluster node name.",
11578 "format" : "pve-node",
11579 "type" : "string",
11580 "typetext" : "<string>"
11581 }
11582 }
11583 },
732d76e1
DM
11584 "permissions" : {
11585 "check" : [
11586 "admin",
11587 "audit"
11588 ]
11589 },
9fda36b0
DM
11590 "protected" : 1,
11591 "proxyto" : "node",
11592 "returns" : {
11593 "items" : {
11594 "properties" : {},
11595 "type" : "object"
11596 },
11597 "type" : "array"
11598 }
11599 },
11600 "POST" : {
6bd70b95 11601 "allowtoken" : 1,
9fda36b0
DM
11602 "description" : "This is used to resynchronize the package index files from their sources (apt-get update).",
11603 "method" : "POST",
11604 "name" : "update_database",
11605 "parameters" : {
11606 "additionalProperties" : 0,
11607 "properties" : {
11608 "node" : {
11609 "description" : "The cluster node name.",
11610 "format" : "pve-node",
11611 "type" : "string",
11612 "typetext" : "<string>"
11613 },
11614 "notify" : {
11615 "default" : 0,
11616 "description" : "Send notification mail about new packages (to email address specified for user 'root@pam').",
11617 "optional" : 1,
11618 "type" : "boolean",
11619 "typetext" : "<boolean>"
11620 },
11621 "quiet" : {
11622 "default" : 0,
11623 "description" : "Only produces output suitable for logging, omitting progress indicators.",
11624 "optional" : 1,
11625 "type" : "boolean",
11626 "typetext" : "<boolean>"
11627 }
11628 }
11629 },
732d76e1
DM
11630 "permissions" : {
11631 "check" : [
11632 "admin"
11633 ]
11634 },
9fda36b0
DM
11635 "protected" : 1,
11636 "proxyto" : "node",
11637 "returns" : {
11638 "type" : "string"
11639 }
11640 }
11641 },
11642 "leaf" : 1,
11643 "path" : "/nodes/{node}/apt/update",
11644 "text" : "update"
11645 },
11646 {
11647 "info" : {
11648 "GET" : {
6bd70b95 11649 "allowtoken" : 1,
9fda36b0
DM
11650 "description" : "Get package changelogs.",
11651 "method" : "GET",
11652 "name" : "changelog",
11653 "parameters" : {
11654 "additionalProperties" : 0,
11655 "properties" : {
11656 "name" : {
11657 "description" : "Package name.",
11658 "type" : "string",
11659 "typetext" : "<string>"
11660 },
11661 "node" : {
11662 "description" : "The cluster node name.",
11663 "format" : "pve-node",
11664 "type" : "string",
11665 "typetext" : "<string>"
11666 },
11667 "version" : {
11668 "description" : "Package version.",
11669 "optional" : 1,
11670 "type" : "string",
11671 "typetext" : "<string>"
11672 }
11673 }
11674 },
732d76e1
DM
11675 "permissions" : {
11676 "check" : [
11677 "admin",
11678 "audit"
11679 ]
11680 },
9fda36b0
DM
11681 "proxyto" : "node",
11682 "returns" : {
11683 "type" : "string"
11684 }
11685 }
11686 },
11687 "leaf" : 1,
11688 "path" : "/nodes/{node}/apt/changelog",
11689 "text" : "changelog"
11690 },
11691 {
11692 "info" : {
11693 "GET" : {
6bd70b95 11694 "allowtoken" : 1,
9fda36b0
DM
11695 "description" : "Get package information for important Proxmox packages.",
11696 "method" : "GET",
11697 "name" : "versions",
11698 "parameters" : {
11699 "additionalProperties" : 0,
11700 "properties" : {
11701 "node" : {
11702 "description" : "The cluster node name.",
11703 "format" : "pve-node",
11704 "type" : "string",
11705 "typetext" : "<string>"
11706 }
11707 }
11708 },
11709 "permissions" : {
11710 "check" : [
732d76e1
DM
11711 "admin",
11712 "audit"
9fda36b0
DM
11713 ]
11714 },
11715 "proxyto" : "node",
11716 "returns" : {
11717 "items" : {
11718 "properties" : {},
11719 "type" : "object"
11720 },
11721 "type" : "array"
11722 }
11723 }
11724 },
11725 "leaf" : 1,
11726 "path" : "/nodes/{node}/apt/versions",
11727 "text" : "versions"
11728 }
11729 ],
11730 "info" : {
11731 "GET" : {
6bd70b95 11732 "allowtoken" : 1,
9fda36b0
DM
11733 "description" : "Directory index for apt (Advanced Package Tool).",
11734 "method" : "GET",
11735 "name" : "index",
11736 "parameters" : {
11737 "additionalProperties" : 0,
11738 "properties" : {
11739 "node" : {
11740 "description" : "The cluster node name.",
11741 "format" : "pve-node",
11742 "type" : "string",
11743 "typetext" : "<string>"
11744 }
11745 }
11746 },
11747 "permissions" : {
11748 "user" : "all"
11749 },
11750 "returns" : {
11751 "items" : {
11752 "properties" : {
11753 "id" : {
11754 "type" : "string"
11755 }
11756 },
11757 "type" : "object"
11758 },
11759 "links" : [
11760 {
11761 "href" : "{id}",
11762 "rel" : "child"
11763 }
11764 ],
11765 "type" : "array"
11766 }
11767 }
11768 },
11769 "leaf" : 0,
11770 "path" : "/nodes/{node}/apt",
11771 "text" : "apt"
11772 },
11773 {
11774 "children" : [
11775 {
11776 "info" : {
11777 "GET" : {
6bd70b95 11778 "allowtoken" : 1,
9fda36b0
DM
11779 "description" : "Get the detailed syslog entries for a specific mail ID.",
11780 "method" : "GET",
11781 "name" : "maillog",
11782 "parameters" : {
11783 "additionalProperties" : 0,
11784 "properties" : {
11785 "endtime" : {
11786 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
11787 "minimum" : 1,
11788 "optional" : 1,
11789 "type" : "integer",
11790 "typetext" : "<integer> (1 - N)"
11791 },
11792 "id" : {
11793 "description" : "Mail ID (as returend by the list API).",
11794 "maxLength" : 64,
11795 "minLength" : 3,
11796 "type" : "string",
11797 "typetext" : "<string>"
11798 },
11799 "node" : {
11800 "description" : "The cluster node name.",
11801 "format" : "pve-node",
11802 "type" : "string",
11803 "typetext" : "<string>"
11804 },
11805 "starttime" : {
11806 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
11807 "minimum" : 0,
11808 "optional" : 1,
11809 "type" : "integer",
11810 "typetext" : "<integer> (0 - N)"
11811 }
11812 }
11813 },
732d76e1
DM
11814 "permissions" : {
11815 "check" : [
11816 "admin",
11817 "audit"
11818 ]
11819 },
9fda36b0
DM
11820 "protected" : 1,
11821 "proxyto" : "node",
11822 "returns" : {
11823 "properties" : {
11824 "client" : {
11825 "description" : "Client address",
11826 "optional" : 1,
11827 "type" : "string"
11828 },
11829 "dstatus" : {
11830 "description" : "Delivery status.",
11831 "maxLength" : 1,
11832 "minLength" : 1,
11833 "type" : "string"
11834 },
11835 "from" : {
11836 "description" : "Sender email address.",
11837 "type" : "string"
11838 },
11839 "id" : {
11840 "description" : "Unique ID.",
11841 "type" : "string"
11842 },
11843 "logs" : {
11844 "items" : {
11845 "type" : "string"
11846 },
11847 "type" : "array"
11848 },
11849 "msgid" : {
11850 "description" : "SMTP message ID.",
11851 "optional" : 1,
11852 "type" : "string"
11853 },
11854 "qid" : {
11855 "description" : "Postfix qmgr ID.",
11856 "optional" : 1,
11857 "type" : "string"
11858 },
11859 "relay" : {
11860 "description" : "ID of relayed mail.",
11861 "optional" : 1,
11862 "type" : "string"
11863 },
11864 "rstatus" : {
11865 "description" : "Delivery status of relayed mail.",
11866 "maxLength" : 1,
11867 "minLength" : 1,
11868 "optional" : 1,
11869 "type" : "string"
11870 },
11871 "size" : {
11872 "description" : "The size of the raw email.",
11873 "optional" : 1,
11874 "type" : "number"
11875 },
11876 "time" : {
11877 "description" : "Delivery timestamp.",
11878 "type" : "integer"
11879 },
11880 "to" : {
11881 "description" : "Receiver email address.",
11882 "type" : "string"
11883 }
11884 },
11885 "type" : "object"
11886 }
11887 }
11888 },
11889 "leaf" : 1,
11890 "path" : "/nodes/{node}/tracker/{id}",
11891 "text" : "{id}"
11892 }
11893 ],
11894 "info" : {
11895 "GET" : {
6bd70b95 11896 "allowtoken" : 1,
9fda36b0
DM
11897 "description" : "Read mail list.",
11898 "method" : "GET",
11899 "name" : "list_mails",
11900 "parameters" : {
11901 "additionalProperties" : 0,
11902 "properties" : {
11903 "endtime" : {
11904 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
11905 "minimum" : 1,
11906 "optional" : 1,
11907 "type" : "integer",
11908 "typetext" : "<integer> (1 - N)"
11909 },
11910 "from" : {
11911 "description" : "Sender email address filter.",
11912 "maxLength" : 256,
11913 "minLength" : 1,
11914 "optional" : 1,
11915 "type" : "string",
11916 "typetext" : "<string>"
11917 },
11918 "greylist" : {
11919 "default" : 0,
11920 "description" : "Include Greylisted entries.",
11921 "optional" : 1,
11922 "type" : "boolean",
11923 "typetext" : "<boolean>"
11924 },
11925 "ndr" : {
11926 "default" : 0,
11927 "description" : "Include NDRs (non delivery reports).",
11928 "optional" : 1,
11929 "type" : "boolean",
11930 "typetext" : "<boolean>"
11931 },
11932 "node" : {
11933 "description" : "The cluster node name.",
11934 "format" : "pve-node",
11935 "type" : "string",
11936 "typetext" : "<string>"
11937 },
11938 "starttime" : {
11939 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
11940 "minimum" : 0,
11941 "optional" : 1,
11942 "type" : "integer",
11943 "typetext" : "<integer> (0 - N)"
11944 },
11945 "target" : {
11946 "description" : "Receiver email address filter.",
11947 "maxLength" : 256,
11948 "minLength" : 1,
11949 "optional" : 1,
11950 "type" : "string",
11951 "typetext" : "<string>"
11952 },
11953 "xfilter" : {
11954 "description" : "Only include mails containing this filter string.",
11955 "maxLength" : 256,
11956 "minLength" : 1,
11957 "optional" : 1,
11958 "type" : "string",
11959 "typetext" : "<string>"
11960 }
11961 }
11962 },
732d76e1
DM
11963 "permissions" : {
11964 "check" : [
11965 "admin",
11966 "audit"
11967 ]
11968 },
9fda36b0
DM
11969 "protected" : 1,
11970 "proxyto" : "node",
11971 "returns" : {
11972 "items" : {
11973 "properties" : {
11974 "client" : {
11975 "description" : "Client address",
11976 "optional" : 1,
11977 "type" : "string"
11978 },
11979 "dstatus" : {
11980 "description" : "Delivery status.",
11981 "maxLength" : 1,
11982 "minLength" : 1,
11983 "type" : "string"
11984 },
11985 "from" : {
11986 "description" : "Sender email address.",
11987 "type" : "string"
11988 },
11989 "id" : {
11990 "description" : "Unique ID.",
11991 "type" : "string"
11992 },
11993 "msgid" : {
11994 "description" : "SMTP message ID.",
11995 "optional" : 1,
11996 "type" : "string"
11997 },
11998 "qid" : {
11999 "description" : "Postfix qmgr ID.",
12000 "optional" : 1,
12001 "type" : "string"
12002 },
12003 "relay" : {
12004 "description" : "ID of relayed mail.",
12005 "optional" : 1,
12006 "type" : "string"
12007 },
12008 "rstatus" : {
12009 "description" : "Delivery status of relayed mail.",
12010 "maxLength" : 1,
12011 "minLength" : 1,
12012 "optional" : 1,
12013 "type" : "string"
12014 },
12015 "size" : {
12016 "description" : "The size of the raw email.",
12017 "optional" : 1,
12018 "type" : "number"
12019 },
12020 "time" : {
12021 "description" : "Delivery timestamp.",
12022 "type" : "integer"
12023 },
12024 "to" : {
12025 "description" : "Receiver email address.",
12026 "type" : "string"
12027 }
12028 },
12029 "type" : "object"
12030 },
12031 "links" : [
12032 {
12033 "href" : "{id}",
12034 "rel" : "child"
12035 }
12036 ],
12037 "type" : "array"
12038 }
12039 }
12040 },
12041 "leaf" : 0,
12042 "path" : "/nodes/{node}/tracker",
12043 "text" : "tracker"
12044 },
bb6e6e0d
DM
12045 {
12046 "children" : [
12047 {
12048 "info" : {
12049 "DELETE" : {
6bd70b95 12050 "allowtoken" : 1,
bb6e6e0d
DM
12051 "description" : "Delete a backup file.",
12052 "method" : "DELETE",
12053 "name" : "delete",
12054 "parameters" : {
12055 "additionalProperties" : 0,
12056 "properties" : {
12057 "filename" : {
12058 "description" : "The backup file name.",
12059 "maxLength" : 256,
12060 "minLength" : 4,
12061 "pattern" : "pmg-backup_[0-9A-Za-z_-]+\\.tgz",
12062 "type" : "string"
12063 },
12064 "node" : {
12065 "description" : "The cluster node name.",
12066 "format" : "pve-node",
12067 "type" : "string",
12068 "typetext" : "<string>"
12069 }
12070 }
12071 },
12072 "permissions" : {
12073 "check" : [
12074 "admin"
12075 ]
12076 },
12077 "protected" : 1,
12078 "proxyto" : "node",
12079 "returns" : {
12080 "type" : "null"
12081 }
12082 },
12083 "GET" : {
6bd70b95 12084 "allowtoken" : 1,
bb6e6e0d
DM
12085 "description" : "Download a backup file.",
12086 "download" : 1,
12087 "method" : "GET",
12088 "name" : "download",
12089 "parameters" : {
12090 "additionalProperties" : 0,
12091 "properties" : {
12092 "filename" : {
12093 "description" : "The backup file name.",
12094 "maxLength" : 256,
12095 "minLength" : 4,
12096 "pattern" : "pmg-backup_[0-9A-Za-z_-]+\\.tgz",
12097 "type" : "string"
12098 },
12099 "node" : {
12100 "description" : "The cluster node name.",
12101 "format" : "pve-node",
12102 "type" : "string",
12103 "typetext" : "<string>"
12104 }
12105 }
12106 },
12107 "permissions" : {
12108 "check" : [
12109 "admin"
12110 ]
12111 },
12112 "protected" : 1,
12113 "proxyto" : "node",
12114 "returns" : {
12115 "type" : "string"
12116 }
12117 },
12118 "POST" : {
6bd70b95 12119 "allowtoken" : 1,
bb6e6e0d
DM
12120 "description" : "Restore the system configuration.",
12121 "method" : "POST",
12122 "name" : "restore",
12123 "parameters" : {
12124 "additionalProperties" : 0,
12125 "properties" : {
12126 "config" : {
12127 "default" : 0,
12128 "description" : "Restore system configuration.",
12129 "optional" : 1,
12130 "type" : "boolean",
12131 "typetext" : "<boolean>"
12132 },
12133 "database" : {
12134 "default" : 1,
12135 "description" : "Restore the rule database. This is the default.",
12136 "optional" : 1,
12137 "type" : "boolean",
12138 "typetext" : "<boolean>"
12139 },
12140 "filename" : {
12141 "description" : "The backup file name.",
12142 "maxLength" : 256,
12143 "minLength" : 4,
12144 "pattern" : "pmg-backup_[0-9A-Za-z_-]+\\.tgz",
12145 "type" : "string"
12146 },
12147 "node" : {
12148 "description" : "The cluster node name.",
12149 "format" : "pve-node",
12150 "type" : "string",
12151 "typetext" : "<string>"
12152 },
12153 "statistic" : {
12154 "default" : 0,
12155 "description" : "Restore statistic databases. Only considered when you restore the 'database'.",
12156 "optional" : 1,
12157 "type" : "boolean",
12158 "typetext" : "<boolean>"
12159 }
12160 }
12161 },
12162 "permissions" : {
12163 "check" : [
12164 "admin"
12165 ]
12166 },
12167 "protected" : 1,
12168 "proxyto" : "node",
12169 "returns" : {
12170 "type" : "string"
12171 }
12172 }
12173 },
12174 "leaf" : 1,
12175 "path" : "/nodes/{node}/backup/{filename}",
12176 "text" : "{filename}"
12177 }
12178 ],
12179 "info" : {
12180 "GET" : {
6bd70b95 12181 "allowtoken" : 1,
bb6e6e0d
DM
12182 "description" : "List all stored backups (files named proxmox-backup_{DATE}.tgz).",
12183 "method" : "GET",
12184 "name" : "list",
12185 "parameters" : {
12186 "additionalProperties" : 0,
12187 "properties" : {
12188 "node" : {
12189 "description" : "The cluster node name.",
12190 "format" : "pve-node",
12191 "type" : "string",
12192 "typetext" : "<string>"
12193 }
12194 }
12195 },
12196 "permissions" : {
12197 "check" : [
12198 "admin",
12199 "audit"
12200 ]
12201 },
12202 "protected" : 1,
12203 "proxyto" : "node",
12204 "returns" : {
12205 "items" : {
12206 "properties" : {
12207 "filename" : {
12208 "description" : "The backup file name.",
12209 "maxLength" : 256,
12210 "minLength" : 4,
12211 "pattern" : "pmg-backup_[0-9A-Za-z_-]+\\.tgz",
12212 "type" : "string"
12213 },
12214 "size" : {
12215 "description" : "Size of backup file in bytes.",
12216 "type" : "integer"
12217 },
12218 "timestamp" : {
12219 "description" : "Backup timestamp (Unix epoch).",
12220 "type" : "integer"
12221 }
12222 },
12223 "type" : "object"
12224 },
12225 "links" : [
12226 {
12227 "href" : "{filename}",
12228 "rel" : "child"
12229 }
12230 ],
12231 "type" : "array"
12232 }
12233 },
12234 "POST" : {
6bd70b95 12235 "allowtoken" : 1,
bb6e6e0d
DM
12236 "description" : "Backup the system configuration.",
12237 "method" : "POST",
12238 "name" : "backup",
12239 "parameters" : {
12240 "additionalProperties" : 0,
12241 "properties" : {
12242 "node" : {
12243 "description" : "The cluster node name.",
12244 "format" : "pve-node",
12245 "type" : "string",
12246 "typetext" : "<string>"
12247 },
12248 "statistic" : {
12249 "default" : 1,
12250 "description" : "Backup statistic databases.",
12251 "optional" : 1,
12252 "type" : "boolean",
12253 "typetext" : "<boolean>"
12254 }
12255 }
12256 },
12257 "permissions" : {
12258 "check" : [
12259 "admin"
12260 ]
12261 },
12262 "protected" : 1,
12263 "proxyto" : "node",
12264 "returns" : {
12265 "type" : "string"
12266 }
12267 }
12268 },
12269 "leaf" : 0,
12270 "path" : "/nodes/{node}/backup",
12271 "text" : "backup"
12272 },
241ac83c
TL
12273 {
12274 "info" : {
12275 "GET" : {
6bd70b95 12276 "allowtoken" : 1,
241ac83c
TL
12277 "description" : "Gather various system information about a node",
12278 "method" : "GET",
12279 "name" : "report",
12280 "parameters" : {
12281 "additionalProperties" : 0,
12282 "properties" : {
12283 "node" : {
12284 "description" : "The cluster node name.",
12285 "format" : "pve-node",
12286 "type" : "string",
12287 "typetext" : "<string>"
12288 }
12289 }
12290 },
12291 "permissions" : {
12292 "check" : [
12293 "admin",
12294 "audit"
12295 ]
12296 },
12297 "protected" : 1,
12298 "proxyto" : "node",
12299 "returns" : {
12300 "type" : "string"
12301 }
12302 }
12303 },
12304 "leaf" : 1,
12305 "path" : "/nodes/{node}/report",
12306 "text" : "report"
12307 },
9fda36b0
DM
12308 {
12309 "info" : {
12310 "GET" : {
6bd70b95 12311 "allowtoken" : 1,
9fda36b0
DM
12312 "description" : "Read node RRD statistics",
12313 "method" : "GET",
12314 "name" : "rrddata",
12315 "parameters" : {
12316 "additionalProperties" : 0,
12317 "properties" : {
12318 "cf" : {
12319 "description" : "The RRD consolidation function",
12320 "enum" : [
12321 "AVERAGE",
12322 "MAX"
12323 ],
12324 "optional" : 1,
12325 "type" : "string"
12326 },
12327 "node" : {
12328 "description" : "The cluster node name.",
12329 "format" : "pve-node",
12330 "type" : "string",
12331 "typetext" : "<string>"
12332 },
12333 "timeframe" : {
12334 "description" : "Specify the time frame you are interested in.",
12335 "enum" : [
12336 "hour",
12337 "day",
12338 "week",
12339 "month",
12340 "year"
12341 ],
12342 "type" : "string"
12343 }
12344 }
12345 },
732d76e1
DM
12346 "permissions" : {
12347 "check" : [
12348 "admin",
12349 "audit"
12350 ]
12351 },
9fda36b0
DM
12352 "protected" : 1,
12353 "proxyto" : "node",
12354 "returns" : {
12355 "items" : {
12356 "properties" : {},
12357 "type" : "object"
12358 },
12359 "type" : "array"
12360 }
12361 }
12362 },
12363 "leaf" : 1,
12364 "path" : "/nodes/{node}/rrddata",
12365 "text" : "rrddata"
12366 },
12367 {
12368 "info" : {
12369 "GET" : {
6bd70b95 12370 "allowtoken" : 1,
9fda36b0
DM
12371 "description" : "Read system log",
12372 "method" : "GET",
12373 "name" : "syslog",
12374 "parameters" : {
12375 "additionalProperties" : 0,
12376 "properties" : {
12377 "limit" : {
12378 "minimum" : 0,
12379 "optional" : 1,
12380 "type" : "integer",
12381 "typetext" : "<integer> (0 - N)"
12382 },
12383 "node" : {
12384 "description" : "The cluster node name.",
12385 "format" : "pve-node",
12386 "type" : "string",
12387 "typetext" : "<string>"
12388 },
12389 "service" : {
12390 "description" : "Service ID",
12391 "maxLength" : 128,
12392 "optional" : 1,
12393 "type" : "string",
12394 "typetext" : "<string>"
12395 },
12396 "since" : {
12397 "description" : "Display all log since this date-time string.",
12398 "optional" : 1,
12399 "pattern" : "^\\d{4}-\\d{2}-\\d{2}( \\d{2}:\\d{2}(:\\d{2})?)?$",
12400 "type" : "string"
12401 },
12402 "start" : {
12403 "minimum" : 0,
12404 "optional" : 1,
12405 "type" : "integer",
12406 "typetext" : "<integer> (0 - N)"
12407 },
12408 "until" : {
12409 "description" : "Display all log until this date-time string.",
12410 "optional" : 1,
12411 "pattern" : "^\\d{4}-\\d{2}-\\d{2}( \\d{2}:\\d{2}(:\\d{2})?)?$",
12412 "type" : "string"
12413 }
12414 }
12415 },
732d76e1
DM
12416 "permissions" : {
12417 "check" : [
12418 "admin",
12419 "audit"
12420 ]
12421 },
9fda36b0
DM
12422 "protected" : 1,
12423 "proxyto" : "node",
12424 "returns" : {
12425 "items" : {
12426 "properties" : {
12427 "n" : {
12428 "description" : "Line number",
12429 "type" : "integer"
12430 },
12431 "t" : {
12432 "description" : "Line text",
12433 "type" : "string"
12434 }
12435 },
12436 "type" : "object"
12437 },
12438 "type" : "array"
12439 }
12440 }
12441 },
12442 "leaf" : 1,
12443 "path" : "/nodes/{node}/syslog",
12444 "text" : "syslog"
12445 },
241ac83c
TL
12446 {
12447 "info" : {
12448 "GET" : {
6bd70b95 12449 "allowtoken" : 1,
241ac83c
TL
12450 "description" : "Read Journal",
12451 "method" : "GET",
12452 "name" : "journal",
12453 "parameters" : {
12454 "additionalProperties" : 0,
12455 "properties" : {
12456 "endcursor" : {
12457 "description" : "End before the given Cursor. Conflicts with 'until'.",
12458 "optional" : 1,
12459 "type" : "string",
12460 "typetext" : "<string>"
12461 },
12462 "lastentries" : {
12463 "description" : "Limit to the last X lines. Conflicts with a range.",
12464 "minimum" : 0,
12465 "optional" : 1,
12466 "type" : "integer",
12467 "typetext" : "<integer> (0 - N)"
12468 },
12469 "node" : {
12470 "description" : "The cluster node name.",
12471 "format" : "pve-node",
12472 "type" : "string",
12473 "typetext" : "<string>"
12474 },
12475 "since" : {
12476 "description" : "Display all log since this UNIX epoch. Conflicts with 'startcursor'.",
12477 "minimum" : 0,
12478 "optional" : 1,
12479 "type" : "integer",
12480 "typetext" : "<integer> (0 - N)"
12481 },
12482 "startcursor" : {
12483 "description" : "Start after the given Cursor. Conflicts with 'since'.",
12484 "optional" : 1,
12485 "type" : "string",
12486 "typetext" : "<string>"
12487 },
12488 "until" : {
12489 "description" : "Display all log until this UNIX epoch. Conflicts with 'endcursor'.",
12490 "minimum" : 0,
12491 "optional" : 1,
12492 "type" : "integer",
12493 "typetext" : "<integer> (0 - N)"
12494 }
12495 }
12496 },
12497 "permissions" : {
12498 "check" : [
12499 "admin",
12500 "audit"
12501 ]
12502 },
12503 "protected" : 1,
12504 "proxyto" : "node",
12505 "returns" : {
12506 "items" : {
12507 "type" : "string"
12508 },
12509 "type" : "array"
12510 }
12511 }
12512 },
12513 "leaf" : 1,
12514 "path" : "/nodes/{node}/journal",
12515 "text" : "journal"
12516 },
9fda36b0
DM
12517 {
12518 "info" : {
12519 "POST" : {
6bd70b95 12520 "allowtoken" : 1,
274b47fc 12521 "description" : "Creates a Terminal proxy.",
9fda36b0 12522 "method" : "POST",
274b47fc 12523 "name" : "termproxy",
9fda36b0
DM
12524 "parameters" : {
12525 "additionalProperties" : 0,
12526 "properties" : {
12527 "node" : {
12528 "description" : "The cluster node name.",
12529 "format" : "pve-node",
12530 "type" : "string",
12531 "typetext" : "<string>"
12532 },
12533 "upgrade" : {
12534 "default" : 0,
12535 "description" : "Run 'apt-get dist-upgrade' instead of normal shell.",
12536 "optional" : 1,
12537 "type" : "boolean",
12538 "typetext" : "<boolean>"
9fda36b0
DM
12539 }
12540 }
12541 },
274b47fc
DM
12542 "permissions" : {
12543 "check" : [
12544 "admin"
12545 ]
12546 },
9fda36b0
DM
12547 "protected" : 1,
12548 "returns" : {
12549 "additionalProperties" : 0,
12550 "properties" : {
12551 "port" : {
12552 "type" : "integer"
12553 },
12554 "ticket" : {
12555 "type" : "string"
12556 },
12557 "upid" : {
12558 "type" : "string"
12559 },
12560 "user" : {
12561 "type" : "string"
12562 }
12563 }
12564 }
12565 }
12566 },
12567 "leaf" : 1,
274b47fc
DM
12568 "path" : "/nodes/{node}/termproxy",
12569 "text" : "termproxy"
9fda36b0
DM
12570 },
12571 {
12572 "info" : {
12573 "GET" : {
6bd70b95 12574 "allowtoken" : 1,
9fda36b0
DM
12575 "description" : "Opens a weksocket for VNC traffic.",
12576 "method" : "GET",
12577 "name" : "vncwebsocket",
12578 "parameters" : {
12579 "additionalProperties" : 0,
12580 "properties" : {
12581 "node" : {
12582 "description" : "The cluster node name.",
12583 "format" : "pve-node",
12584 "type" : "string",
12585 "typetext" : "<string>"
12586 },
12587 "port" : {
12588 "description" : "Port number returned by previous vncproxy call.",
12589 "maximum" : 5999,
12590 "minimum" : 5900,
12591 "type" : "integer",
12592 "typetext" : "<integer> (5900 - 5999)"
12593 },
12594 "vncticket" : {
12595 "description" : "Ticket from previous call to vncproxy.",
12596 "maxLength" : 512,
12597 "type" : "string",
12598 "typetext" : "<string>"
12599 }
12600 }
12601 },
274b47fc
DM
12602 "permissions" : {
12603 "check" : [
12604 "admin"
12605 ]
12606 },
9fda36b0
DM
12607 "returns" : {
12608 "properties" : {
12609 "port" : {
12610 "type" : "string"
12611 }
12612 },
12613 "type" : "object"
12614 }
12615 }
12616 },
12617 "leaf" : 1,
12618 "path" : "/nodes/{node}/vncwebsocket",
12619 "text" : "vncwebsocket"
12620 },
12621 {
12622 "info" : {
12623 "GET" : {
6bd70b95 12624 "allowtoken" : 1,
9fda36b0
DM
12625 "description" : "Read DNS settings.",
12626 "method" : "GET",
12627 "name" : "dns",
12628 "parameters" : {
12629 "additionalProperties" : 0,
12630 "properties" : {
12631 "node" : {
12632 "description" : "The cluster node name.",
12633 "format" : "pve-node",
12634 "type" : "string",
12635 "typetext" : "<string>"
12636 }
12637 }
12638 },
732d76e1
DM
12639 "permissions" : {
12640 "check" : [
12641 "admin",
12642 "audit"
12643 ]
12644 },
9fda36b0
DM
12645 "proxyto" : "node",
12646 "returns" : {
12647 "additionalProperties" : 0,
12648 "properties" : {
12649 "dns1" : {
12650 "description" : "First name server IP address.",
12651 "optional" : 1,
12652 "type" : "string"
12653 },
12654 "dns2" : {
12655 "description" : "Second name server IP address.",
12656 "optional" : 1,
12657 "type" : "string"
12658 },
12659 "dns3" : {
12660 "description" : "Third name server IP address.",
12661 "optional" : 1,
12662 "type" : "string"
12663 },
12664 "search" : {
12665 "description" : "Search domain for host-name lookup.",
12666 "optional" : 1,
12667 "type" : "string"
12668 }
12669 },
12670 "type" : "object"
12671 }
12672 },
12673 "PUT" : {
6bd70b95 12674 "allowtoken" : 1,
9fda36b0
DM
12675 "description" : "Write DNS settings.",
12676 "method" : "PUT",
12677 "name" : "update_dns",
12678 "parameters" : {
12679 "additionalProperties" : 0,
12680 "properties" : {
12681 "dns1" : {
12682 "description" : "First name server IP address.",
12683 "format" : "ip",
12684 "optional" : 1,
12685 "type" : "string",
12686 "typetext" : "<string>"
12687 },
12688 "dns2" : {
12689 "description" : "Second name server IP address.",
12690 "format" : "ip",
12691 "optional" : 1,
12692 "type" : "string",
12693 "typetext" : "<string>"
12694 },
12695 "dns3" : {
12696 "description" : "Third name server IP address.",
12697 "format" : "ip",
12698 "optional" : 1,
12699 "type" : "string",
12700 "typetext" : "<string>"
12701 },
12702 "node" : {
12703 "description" : "The cluster node name.",
12704 "format" : "pve-node",
12705 "type" : "string",
12706 "typetext" : "<string>"
12707 },
12708 "search" : {
12709 "description" : "Search domain for host-name lookup.",
12710 "type" : "string",
12711 "typetext" : "<string>"
12712 }
12713 }
12714 },
12715 "protected" : 1,
12716 "proxyto" : "node",
12717 "returns" : {
12718 "type" : "null"
12719 }
12720 }
12721 },
12722 "leaf" : 1,
12723 "path" : "/nodes/{node}/dns",
12724 "text" : "dns"
12725 },
12726 {
12727 "info" : {
12728 "GET" : {
6bd70b95 12729 "allowtoken" : 1,
9fda36b0
DM
12730 "description" : "Read server time and time zone settings.",
12731 "method" : "GET",
12732 "name" : "time",
12733 "parameters" : {
12734 "additionalProperties" : 0,
12735 "properties" : {
12736 "node" : {
12737 "description" : "The cluster node name.",
12738 "format" : "pve-node",
12739 "type" : "string",
12740 "typetext" : "<string>"
12741 }
12742 }
12743 },
732d76e1
DM
12744 "permissions" : {
12745 "check" : [
12746 "admin",
12747 "audit"
12748 ]
12749 },
9fda36b0
DM
12750 "proxyto" : "node",
12751 "returns" : {
12752 "additionalProperties" : 0,
12753 "properties" : {
12754 "localtime" : {
12755 "description" : "Seconds since 1970-01-01 00:00:00 (local time)",
12756 "minimum" : 1297163644,
12757 "type" : "integer"
12758 },
12759 "time" : {
12760 "description" : "Seconds since 1970-01-01 00:00:00 UTC.",
12761 "minimum" : 1297163644,
12762 "type" : "integer"
12763 },
12764 "timezone" : {
12765 "description" : "Time zone",
12766 "type" : "string"
12767 }
12768 },
12769 "type" : "object"
12770 }
12771 },
12772 "PUT" : {
6bd70b95 12773 "allowtoken" : 1,
9fda36b0
DM
12774 "description" : "Set time zone.",
12775 "method" : "PUT",
12776 "name" : "set_timezone",
12777 "parameters" : {
12778 "additionalProperties" : 0,
12779 "properties" : {
12780 "node" : {
12781 "description" : "The cluster node name.",
12782 "format" : "pve-node",
12783 "type" : "string",
12784 "typetext" : "<string>"
12785 },
12786 "timezone" : {
12787 "description" : "Time zone. The file '/usr/share/zoneinfo/zone.tab' contains the list of valid names.",
12788 "type" : "string",
12789 "typetext" : "<string>"
12790 }
12791 }
12792 },
12793 "protected" : 1,
12794 "proxyto" : "node",
12795 "returns" : {
12796 "type" : "null"
12797 }
12798 }
12799 },
12800 "leaf" : 1,
12801 "path" : "/nodes/{node}/time",
12802 "text" : "time"
12803 },
12804 {
12805 "info" : {
12806 "GET" : {
6bd70b95 12807 "allowtoken" : 1,
9fda36b0
DM
12808 "description" : "Read server status. This is used by the cluster manager to test the node health.",
12809 "method" : "GET",
12810 "name" : "status",
12811 "parameters" : {
12812 "additionalProperties" : 0,
12813 "properties" : {
12814 "node" : {
12815 "description" : "The cluster node name.",
12816 "format" : "pve-node",
12817 "type" : "string",
12818 "typetext" : "<string>"
12819 }
12820 }
12821 },
241ac83c
TL
12822 "permissions" : {
12823 "check" : [
12824 "admin",
12825 "qmanager",
12826 "audit"
12827 ]
12828 },
9fda36b0
DM
12829 "protected" : 1,
12830 "proxyto" : "node",
12831 "returns" : {
12832 "additionalProperties" : 1,
12833 "properties" : {
12834 "insync" : {
12835 "description" : "Database is synced with other nodes.",
12836 "type" : "boolean"
12837 },
12838 "time" : {
12839 "description" : "Seconds since 1970-01-01 00:00:00 UTC.",
12840 "minimum" : 1297163644,
12841 "type" : "integer"
12842 },
12843 "uptime" : {
12844 "description" : "The uptime of the system in seconds.",
12845 "minimum" : 0,
12846 "type" : "integer"
12847 }
12848 },
12849 "type" : "object"
12850 }
274b47fc
DM
12851 },
12852 "POST" : {
6bd70b95 12853 "allowtoken" : 1,
274b47fc
DM
12854 "description" : "Reboot or shutdown a node.",
12855 "method" : "POST",
12856 "name" : "node_cmd",
12857 "parameters" : {
12858 "additionalProperties" : 0,
12859 "properties" : {
12860 "command" : {
12861 "description" : "Specify the command.",
12862 "enum" : [
12863 "reboot",
12864 "shutdown"
12865 ],
12866 "type" : "string"
12867 },
12868 "node" : {
12869 "description" : "The cluster node name.",
12870 "format" : "pve-node",
12871 "type" : "string",
12872 "typetext" : "<string>"
12873 }
12874 }
12875 },
12876 "permissions" : {
12877 "check" : [
12878 "admin"
12879 ]
12880 },
12881 "protected" : 1,
12882 "proxyto" : "node",
12883 "returns" : {
12884 "type" : "null"
12885 }
9fda36b0
DM
12886 }
12887 },
12888 "leaf" : 1,
12889 "path" : "/nodes/{node}/status",
12890 "text" : "status"
12891 }
12892 ],
12893 "info" : {
12894 "GET" : {
6bd70b95 12895 "allowtoken" : 1,
9fda36b0
DM
12896 "description" : "Node index.",
12897 "method" : "GET",
12898 "name" : "index",
12899 "parameters" : {
12900 "additionalProperties" : 0,
12901 "properties" : {
12902 "node" : {
12903 "description" : "The cluster node name.",
12904 "format" : "pve-node",
12905 "type" : "string",
12906 "typetext" : "<string>"
12907 }
12908 }
12909 },
12910 "permissions" : {
12911 "user" : "all"
12912 },
12913 "returns" : {
12914 "items" : {
12915 "properties" : {},
12916 "type" : "object"
12917 },
12918 "links" : [
12919 {
12920 "href" : "{name}",
12921 "rel" : "child"
12922 }
12923 ],
12924 "type" : "array"
12925 }
12926 }
12927 },
12928 "leaf" : 0,
12929 "path" : "/nodes/{node}",
12930 "text" : "{node}"
12931 }
12932 ],
12933 "info" : {
12934 "GET" : {
6bd70b95 12935 "allowtoken" : 1,
9fda36b0
DM
12936 "description" : "Cluster node index.",
12937 "method" : "GET",
12938 "name" : "index",
12939 "parameters" : {
12940 "additionalProperties" : 0
12941 },
12942 "permissions" : {
12943 "user" : "all"
12944 },
12945 "returns" : {
12946 "items" : {
12947 "properties" : {},
12948 "type" : "object"
12949 },
12950 "links" : [
12951 {
12952 "href" : "{node}",
12953 "rel" : "child"
12954 }
12955 ],
12956 "type" : "array"
12957 }
12958 }
12959 },
12960 "leaf" : 0,
12961 "path" : "/nodes",
12962 "text" : "nodes"
12963 },
12964 {
12965 "children" : [
12966 {
12967 "children" : [
12968 {
12969 "info" : {
12970 "DELETE" : {
6bd70b95 12971 "allowtoken" : 1,
9fda36b0
DM
12972 "description" : "Delete a user.",
12973 "method" : "DELETE",
12974 "name" : "delete",
12975 "parameters" : {
12976 "additionalProperties" : 0,
12977 "properties" : {
12978 "userid" : {
12979 "description" : "User ID",
12980 "format" : "pmg-userid",
12981 "maxLength" : 64,
12982 "minLength" : 4,
12983 "type" : "string",
12984 "typetext" : "<string>"
12985 }
12986 }
12987 },
12988 "protected" : 1,
12989 "proxyto" : "master",
12990 "returns" : {
12991 "type" : "null"
12992 }
12993 },
12994 "GET" : {
6bd70b95 12995 "allowtoken" : 1,
9fda36b0
DM
12996 "description" : "Read User data.",
12997 "method" : "GET",
12998 "name" : "read",
12999 "parameters" : {
13000 "additionalProperties" : 0,
13001 "properties" : {
13002 "userid" : {
13003 "description" : "User ID",
13004 "format" : "pmg-userid",
13005 "maxLength" : 64,
13006 "minLength" : 4,
13007 "type" : "string",
13008 "typetext" : "<string>"
13009 }
13010 }
13011 },
4a46ced6
DM
13012 "permissions" : {
13013 "check" : [
13014 "admin",
13015 "qmanager",
13016 "audit"
13017 ]
13018 },
9fda36b0
DM
13019 "protected" : 1,
13020 "proxyto" : "master",
13021 "returns" : {
9fda36b0
DM
13022 "type" : "object"
13023 }
13024 },
13025 "PUT" : {
6bd70b95 13026 "allowtoken" : 1,
9fda36b0
DM
13027 "description" : "Update user data.",
13028 "method" : "PUT",
13029 "name" : "write",
13030 "parameters" : {
13031 "additionalProperties" : 0,
13032 "properties" : {
13033 "comment" : {
13034 "description" : "Comment.",
13035 "optional" : 1,
13036 "type" : "string",
13037 "typetext" : "<string>"
13038 },
13039 "crypt_pass" : {
13040 "description" : "Encrypted password (see `man crypt`)",
13041 "optional" : 1,
13042 "pattern" : "\\$\\d\\$[a-zA-Z0-9\\.\\/]+\\$[a-zA-Z0-9\\.\\/]+",
13043 "type" : "string"
13044 },
13045 "delete" : {
13046 "description" : "A list of settings you want to delete.",
13047 "format" : "pve-configid-list",
13048 "maxLength" : 4096,
13049 "optional" : 1,
13050 "type" : "string",
13051 "typetext" : "<string>"
13052 },
13053 "email" : {
13054 "description" : "Users E-Mail address.",
13055 "format" : "email",
13056 "optional" : 1,
13057 "type" : "string",
13058 "typetext" : "<string>"
13059 },
13060 "enable" : {
13061 "default" : 0,
13062 "description" : "Flag to enable or disable the account.",
13063 "optional" : 1,
13064 "type" : "boolean",
13065 "typetext" : "<boolean>"
13066 },
13067 "expire" : {
13068 "default" : 0,
13069 "description" : "Account expiration date (seconds since epoch). '0' means no expiration date.",
13070 "minimum" : 0,
13071 "optional" : 1,
13072 "type" : "integer",
13073 "typetext" : "<integer> (0 - N)"
13074 },
13075 "firstname" : {
13076 "description" : "First name.",
13077 "maxLength" : 64,
13078 "optional" : 1,
13079 "type" : "string",
13080 "typetext" : "<string>"
13081 },
13082 "keys" : {
13083 "description" : "Keys for two factor auth (yubico).",
13084 "maxLength" : 128,
13085 "optional" : 1,
13086 "type" : "string",
13087 "typetext" : "<string>"
13088 },
13089 "lastname" : {
13090 "description" : "Last name.",
13091 "maxLength" : 64,
13092 "optional" : 1,
13093 "type" : "string",
13094 "typetext" : "<string>"
13095 },
13096 "password" : {
13097 "description" : "Password",
13098 "maxLength" : 32,
13099 "minLength" : 5,
13100 "optional" : 1,
13101 "type" : "string",
13102 "typetext" : "<string>"
13103 },
13104 "role" : {
13105 "description" : "User role. Role 'root' is reseved for the Unix Superuser.",
13106 "enum" : [
13107 "root",
13108 "admin",
f225b3b4 13109 "helpdesk",
9fda36b0
DM
13110 "qmanager",
13111 "audit"
13112 ],
13113 "optional" : 1,
13114 "type" : "string"
13115 },
13116 "userid" : {
13117 "description" : "User ID",
13118 "format" : "pmg-userid",
13119 "maxLength" : 64,
13120 "minLength" : 4,
13121 "type" : "string",
13122 "typetext" : "<string>"
13123 }
13124 }
13125 },
13126 "protected" : 1,
13127 "proxyto" : "master",
13128 "returns" : {
13129 "type" : "null"
13130 }
13131 }
13132 },
13133 "leaf" : 1,
13134 "path" : "/access/users/{userid}",
13135 "text" : "{userid}"
13136 }
13137 ],
13138 "info" : {
13139 "GET" : {
6bd70b95 13140 "allowtoken" : 1,
9fda36b0
DM
13141 "description" : "List users.",
13142 "method" : "GET",
13143 "name" : "index",
13144 "parameters" : {
13145 "additionalProperties" : 0
13146 },
13147 "permissions" : {
13148 "check" : [
4a46ced6
DM
13149 "admin",
13150 "qmanager",
13151 "audit"
9fda36b0
DM
13152 ]
13153 },
13154 "protected" : 1,
13155 "proxyto" : "master",
13156 "returns" : {
13157 "items" : {
13158 "properties" : {
13159 "comment" : {
13160 "optional" : 1,
13161 "type" : "string"
13162 },
13163 "enable" : {
13164 "type" : "boolean"
13165 },
13166 "role" : {
13167 "type" : "string"
13168 },
13169 "userid" : {
13170 "type" : "string"
13171 }
13172 },
13173 "type" : "object"
13174 },
13175 "links" : [
13176 {
13177 "href" : "{userid}",
13178 "rel" : "child"
13179 }
13180 ],
13181 "type" : "array"
13182 }
13183 },
13184 "POST" : {
6bd70b95 13185 "allowtoken" : 1,
4a46ced6 13186 "description" : "Create new user",
9fda36b0
DM
13187 "method" : "POST",
13188 "name" : "create",
13189 "parameters" : {
13190 "additionalProperties" : 0,
13191 "properties" : {
13192 "comment" : {
13193 "description" : "Comment.",
13194 "optional" : 1,
13195 "type" : "string",
13196 "typetext" : "<string>"
13197 },
13198 "crypt_pass" : {
13199 "description" : "Encrypted password (see `man crypt`)",
13200 "optional" : 1,
13201 "pattern" : "\\$\\d\\$[a-zA-Z0-9\\.\\/]+\\$[a-zA-Z0-9\\.\\/]+",
13202 "type" : "string"
13203 },
13204 "email" : {
13205 "description" : "Users E-Mail address.",
13206 "format" : "email",
13207 "optional" : 1,
13208 "type" : "string",
13209 "typetext" : "<string>"
13210 },
13211 "enable" : {
13212 "default" : 0,
13213 "description" : "Flag to enable or disable the account.",
13214 "optional" : 1,
13215 "type" : "boolean",
13216 "typetext" : "<boolean>"
13217 },
13218 "expire" : {
13219 "default" : 0,
13220 "description" : "Account expiration date (seconds since epoch). '0' means no expiration date.",
13221 "minimum" : 0,
13222 "optional" : 1,
13223 "type" : "integer",
13224 "typetext" : "<integer> (0 - N)"
13225 },
13226 "firstname" : {
13227 "description" : "First name.",
13228 "maxLength" : 64,
13229 "optional" : 1,
13230 "type" : "string",
13231 "typetext" : "<string>"
a55e94a6 13232 },
9fda36b0
DM
13233 "keys" : {
13234 "description" : "Keys for two factor auth (yubico).",
13235 "maxLength" : 128,
13236 "optional" : 1,
13237 "type" : "string",
13238 "typetext" : "<string>"
13239 },
13240 "lastname" : {
13241 "description" : "Last name.",
13242 "maxLength" : 64,
13243 "optional" : 1,
13244 "type" : "string",
13245 "typetext" : "<string>"
13246 },
13247 "password" : {
13248 "description" : "Password",
13249 "maxLength" : 32,
13250 "minLength" : 5,
13251 "optional" : 1,
13252 "type" : "string",
13253 "typetext" : "<string>"
13254 },
13255 "role" : {
13256 "description" : "User role. Role 'root' is reseved for the Unix Superuser.",
13257 "enum" : [
13258 "root",
13259 "admin",
f225b3b4 13260 "helpdesk",
9fda36b0
DM
13261 "qmanager",
13262 "audit"
a55e94a6 13263 ],
9fda36b0
DM
13264 "type" : "string"
13265 },
13266 "userid" : {
13267 "description" : "User ID",
13268 "format" : "pmg-userid",
13269 "maxLength" : 64,
13270 "minLength" : 4,
13271 "type" : "string",
13272 "typetext" : "<string>"
a55e94a6
DM
13273 }
13274 }
13275 },
9fda36b0
DM
13276 "protected" : 1,
13277 "proxyto" : "master",
13278 "returns" : {
13279 "type" : "null"
13280 }
13281 }
13282 },
13283 "leaf" : 0,
13284 "path" : "/access/users",
13285 "text" : "users"
13286 },
13287 {
13288 "info" : {
13289 "GET" : {
6bd70b95 13290 "allowtoken" : 1,
9fda36b0
DM
13291 "description" : "Dummy. Useful for formaters which want to priovde a login page.",
13292 "method" : "GET",
13293 "name" : "get_ticket",
13294 "parameters" : {
13295 "additionalProperties" : 0
13296 },
13297 "permissions" : {
13298 "user" : "world"
13299 },
13300 "returns" : {
13301 "type" : "null"
13302 }
a55e94a6 13303 },
9fda36b0 13304 "POST" : {
6bd70b95 13305 "allowtoken" : 1,
9fda36b0
DM
13306 "description" : "Create or verify authentication ticket.",
13307 "method" : "POST",
13308 "name" : "create_ticket",
13309 "parameters" : {
13310 "additionalProperties" : 0,
13311 "properties" : {
13312 "otp" : {
13313 "description" : "One-time password for Two-factor authentication.",
13314 "optional" : 1,
13315 "type" : "string",
13316 "typetext" : "<string>"
410dc2c9 13317 },
9fda36b0
DM
13318 "password" : {
13319 "description" : "The secret password. This can also be a valid ticket.",
13320 "type" : "string",
13321 "typetext" : "<string>"
13322 },
274b47fc
DM
13323 "path" : {
13324 "description" : "Verify ticket, and check if user have access on 'path'",
13325 "maxLength" : 64,
13326 "optional" : 1,
13327 "type" : "string",
13328 "typetext" : "<string>"
13329 },
9fda36b0
DM
13330 "realm" : {
13331 "description" : "You can optionally pass the realm using this parameter. Normally the realm is simply added to the username <username>@<relam>.",
732d76e1
DM
13332 "enum" : [
13333 "pam",
13334 "pmg",
13335 "quarantine"
13336 ],
9fda36b0
DM
13337 "maxLength" : 32,
13338 "optional" : 1,
732d76e1 13339 "type" : "string"
9fda36b0
DM
13340 },
13341 "username" : {
13342 "description" : "User name",
13343 "maxLength" : 64,
13344 "type" : "string",
13345 "typetext" : "<string>"
13346 }
13347 }
13348 },
13349 "permissions" : {
13350 "description" : "You need to pass valid credientials.",
13351 "user" : "world"
13352 },
13353 "protected" : 1,
13354 "returns" : {
13355 "properties" : {
13356 "CSRFPreventionToken" : {
13357 "optional" : 1,
13358 "type" : "string"
13359 },
13360 "role" : {
13361 "optional" : 1,
13362 "type" : "string"
13363 },
13364 "ticket" : {
13365 "optional" : 1,
13366 "type" : "string"
13367 },
13368 "username" : {
13369 "type" : "string"
13370 }
13371 },
13372 "type" : "object"
13373 }
13374 }
13375 },
13376 "leaf" : 1,
13377 "path" : "/access/ticket",
13378 "text" : "ticket"
13379 },
13380 {
13381 "info" : {
13382 "PUT" : {
6bd70b95 13383 "allowtoken" : 1,
9fda36b0
DM
13384 "description" : "Change user password.",
13385 "method" : "PUT",
13386 "name" : "change_passsword",
13387 "parameters" : {
13388 "additionalProperties" : 0,
13389 "properties" : {
13390 "password" : {
13391 "description" : "The new password.",
13392 "maxLength" : 64,
13393 "minLength" : 5,
13394 "type" : "string",
13395 "typetext" : "<string>"
13396 },
13397 "userid" : {
13398 "description" : "User ID",
13399 "format" : "pmg-userid",
13400 "maxLength" : 64,
13401 "minLength" : 4,
13402 "type" : "string",
13403 "typetext" : "<string>"
410dc2c9
DM
13404 }
13405 }
13406 },
9fda36b0
DM
13407 "permissions" : {
13408 "description" : "Each user is allowed to change his own password. Only root can change the password of another user.",
13409 "user" : "all"
13410 },
13411 "protected" : 1,
13412 "returns" : {
13413 "type" : "null"
13414 }
13415 }
13416 },
13417 "leaf" : 1,
13418 "path" : "/access/password",
13419 "text" : "password"
13420 }
13421 ],
13422 "info" : {
13423 "GET" : {
6bd70b95 13424 "allowtoken" : 1,
9fda36b0
DM
13425 "description" : "Directory index.",
13426 "method" : "GET",
13427 "name" : "index",
13428 "parameters" : {
13429 "additionalProperties" : 0
13430 },
13431 "permissions" : {
13432 "user" : "all"
13433 },
13434 "returns" : {
13435 "items" : {
13436 "properties" : {
13437 "subdir" : {
13438 "type" : "string"
13439 }
13440 },
13441 "type" : "object"
410dc2c9 13442 },
9fda36b0
DM
13443 "links" : [
13444 {
13445 "href" : "{subdir}",
13446 "rel" : "child"
13447 }
13448 ],
13449 "type" : "array"
13450 }
13451 }
13452 },
13453 "leaf" : 0,
13454 "path" : "/access",
13455 "text" : "access"
13456 },
13457 {
13458 "children" : [
13459 {
13460 "children" : [
410dc2c9
DM
13461 {
13462 "info" : {
9fda36b0 13463 "DELETE" : {
6bd70b95 13464 "allowtoken" : 1,
9fda36b0
DM
13465 "description" : "Delete user whitelist entries.",
13466 "method" : "DELETE",
13467 "name" : "whitelist_delete",
410dc2c9
DM
13468 "parameters" : {
13469 "additionalProperties" : 0,
13470 "properties" : {
9fda36b0
DM
13471 "address" : {
13472 "description" : "The address you want to remove.",
9fda36b0 13473 "minLength" : 3,
241ac83c 13474 "pattern" : "(?:[^\\s\\/\\\\;\\,]+)(?:\\,[^\\s\\/\\\\;\\,]+)*",
9fda36b0 13475 "type" : "string"
410dc2c9 13476 },
9fda36b0
DM
13477 "pmail" : {
13478 "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.",
241ac83c
TL
13479 "maxLength" : 512,
13480 "minLength" : 3,
d7cd791b 13481 "optional" : 1,
241ac83c
TL
13482 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
13483 "type" : "string"
410dc2c9
DM
13484 }
13485 }
13486 },
9fda36b0
DM
13487 "permissions" : {
13488 "check" : [
13489 "admin",
13490 "qmanager",
13491 "audit",
13492 "quser"
13493 ]
13494 },
410dc2c9 13495 "protected" : 1,
410dc2c9 13496 "returns" : {
9fda36b0 13497 "type" : "null"
410dc2c9
DM
13498 }
13499 }
13500 },
13501 "leaf" : 1,
9fda36b0
DM
13502 "path" : "/quarantine/whitelist/{address}",
13503 "text" : "{address}"
13504 }
13505 ],
13506 "info" : {
13507 "GET" : {
6bd70b95 13508 "allowtoken" : 1,
9fda36b0
DM
13509 "description" : "Show user whitelist.",
13510 "method" : "GET",
13511 "name" : "whitelist",
13512 "parameters" : {
13513 "additionalProperties" : 0,
13514 "properties" : {
13515 "pmail" : {
13516 "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.",
241ac83c
TL
13517 "maxLength" : 512,
13518 "minLength" : 3,
9fda36b0 13519 "optional" : 1,
241ac83c
TL
13520 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
13521 "type" : "string"
9fda36b0
DM
13522 }
13523 }
13524 },
13525 "permissions" : {
13526 "check" : [
13527 "admin",
13528 "qmanager",
13529 "audit",
13530 "quser"
13531 ]
13532 },
13533 "returns" : {
13534 "items" : {
13535 "properties" : {
13536 "address" : {
13537 "type" : "string"
410dc2c9
DM
13538 }
13539 },
9fda36b0
DM
13540 "type" : "object"
13541 },
13542 "type" : "array"
13543 }
13544 },
13545 "POST" : {
6bd70b95 13546 "allowtoken" : 1,
9fda36b0
DM
13547 "description" : "Add user whitelist entries.",
13548 "method" : "POST",
13549 "name" : "whitelist_add",
13550 "parameters" : {
13551 "additionalProperties" : 0,
13552 "properties" : {
13553 "address" : {
13554 "description" : "The address you want to add.",
9fda36b0 13555 "minLength" : 3,
241ac83c 13556 "pattern" : "(?:[^\\s\\/\\\\;\\,]+)(?:\\,[^\\s\\/\\\\;\\,]+)*",
9fda36b0
DM
13557 "type" : "string"
13558 },
13559 "pmail" : {
13560 "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.",
241ac83c
TL
13561 "maxLength" : 512,
13562 "minLength" : 3,
9fda36b0 13563 "optional" : 1,
241ac83c
TL
13564 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
13565 "type" : "string"
410dc2c9
DM
13566 }
13567 }
13568 },
9fda36b0
DM
13569 "permissions" : {
13570 "check" : [
13571 "admin",
13572 "qmanager",
13573 "audit",
13574 "quser"
13575 ]
13576 },
13577 "protected" : 1,
13578 "returns" : {
13579 "type" : "null"
13580 }
13581 }
13582 },
13583 "leaf" : 0,
13584 "path" : "/quarantine/whitelist",
13585 "text" : "whitelist"
13586 },
13587 {
13588 "children" : [
13589 {
13590 "info" : {
13591 "DELETE" : {
6bd70b95 13592 "allowtoken" : 1,
9fda36b0
DM
13593 "description" : "Delete user blacklist entries.",
13594 "method" : "DELETE",
13595 "name" : "blacklist_delete",
13596 "parameters" : {
13597 "additionalProperties" : 0,
13598 "properties" : {
13599 "address" : {
13600 "description" : "The address you want to remove.",
9fda36b0 13601 "minLength" : 3,
241ac83c 13602 "pattern" : "(?:[^\\s\\/\\\\;\\,]+)(?:\\,[^\\s\\/\\\\;\\,]+)*",
9fda36b0
DM
13603 "type" : "string"
13604 },
13605 "pmail" : {
13606 "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.",
241ac83c
TL
13607 "maxLength" : 512,
13608 "minLength" : 3,
9fda36b0 13609 "optional" : 1,
241ac83c
TL
13610 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
13611 "type" : "string"
410dc2c9
DM
13612 }
13613 }
13614 },
9fda36b0
DM
13615 "permissions" : {
13616 "check" : [
13617 "admin",
13618 "qmanager",
13619 "audit",
13620 "quser"
13621 ]
13622 },
13623 "protected" : 1,
410dc2c9 13624 "returns" : {
9fda36b0 13625 "type" : "null"
410dc2c9
DM
13626 }
13627 }
13628 },
13629 "leaf" : 1,
9fda36b0
DM
13630 "path" : "/quarantine/blacklist/{address}",
13631 "text" : "{address}"
13632 }
13633 ],
13634 "info" : {
13635 "GET" : {
6bd70b95 13636 "allowtoken" : 1,
9fda36b0
DM
13637 "description" : "Show user blacklist.",
13638 "method" : "GET",
13639 "name" : "blacklist",
13640 "parameters" : {
13641 "additionalProperties" : 0,
13642 "properties" : {
13643 "pmail" : {
13644 "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.",
241ac83c
TL
13645 "maxLength" : 512,
13646 "minLength" : 3,
9fda36b0 13647 "optional" : 1,
241ac83c
TL
13648 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
13649 "type" : "string"
9fda36b0
DM
13650 }
13651 }
13652 },
13653 "permissions" : {
13654 "check" : [
13655 "admin",
13656 "qmanager",
13657 "audit",
13658 "quser"
13659 ]
13660 },
13661 "returns" : {
13662 "items" : {
13663 "properties" : {
13664 "address" : {
13665 "type" : "string"
410dc2c9
DM
13666 }
13667 },
9fda36b0
DM
13668 "type" : "object"
13669 },
13670 "type" : "array"
13671 }
13672 },
13673 "POST" : {
6bd70b95 13674 "allowtoken" : 1,
9fda36b0
DM
13675 "description" : "Add user blacklist entries.",
13676 "method" : "POST",
13677 "name" : "blacklist_add",
13678 "parameters" : {
13679 "additionalProperties" : 0,
13680 "properties" : {
13681 "address" : {
13682 "description" : "The address you want to add.",
9fda36b0 13683 "minLength" : 3,
241ac83c 13684 "pattern" : "(?:[^\\s\\/\\\\;\\,]+)(?:\\,[^\\s\\/\\\\;\\,]+)*",
9fda36b0
DM
13685 "type" : "string"
13686 },
13687 "pmail" : {
13688 "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.",
241ac83c
TL
13689 "maxLength" : 512,
13690 "minLength" : 3,
9fda36b0 13691 "optional" : 1,
241ac83c
TL
13692 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
13693 "type" : "string"
9fda36b0
DM
13694 }
13695 }
13696 },
13697 "permissions" : {
13698 "check" : [
13699 "admin",
13700 "qmanager",
13701 "audit",
13702 "quser"
13703 ]
13704 },
13705 "protected" : 1,
13706 "returns" : {
13707 "type" : "null"
13708 }
13709 }
13710 },
13711 "leaf" : 0,
13712 "path" : "/quarantine/blacklist",
13713 "text" : "blacklist"
13714 },
13715 {
13716 "info" : {
13717 "GET" : {
6bd70b95 13718 "allowtoken" : 1,
9fda36b0
DM
13719 "description" : "Get a list of receivers of spam in the given timespan (Default the last 24 hours).",
13720 "method" : "GET",
13721 "name" : "spamusers",
13722 "parameters" : {
13723 "additionalProperties" : 0,
13724 "properties" : {
13725 "endtime" : {
13726 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13727 "minimum" : 1,
13728 "optional" : 1,
13729 "type" : "integer",
13730 "typetext" : "<integer> (1 - N)"
13731 },
13732 "starttime" : {
13733 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13734 "minimum" : 0,
13735 "optional" : 1,
13736 "type" : "integer",
13737 "typetext" : "<integer> (0 - N)"
410dc2c9 13738 }
9fda36b0
DM
13739 }
13740 },
13741 "permissions" : {
13742 "check" : [
13743 "admin",
13744 "qmanager",
13745 "audit"
13746 ]
13747 },
13748 "returns" : {
13749 "items" : {
13750 "properties" : {
13751 "mail" : {
13752 "description" : "the receiving email",
13753 "type" : "string"
13754 }
13755 },
13756 "type" : "object"
410dc2c9 13757 },
9fda36b0
DM
13758 "type" : "array"
13759 }
13760 }
13761 },
13762 "leaf" : 1,
13763 "path" : "/quarantine/spamusers",
13764 "text" : "spamusers"
13765 },
13766 {
13767 "info" : {
13768 "GET" : {
6bd70b95 13769 "allowtoken" : 1,
9fda36b0
DM
13770 "description" : "Get Spam Quarantine Status",
13771 "method" : "GET",
13772 "name" : "spamstatus",
13773 "parameters" : {
13774 "additionalProperties" : 0
13775 },
13776 "permissions" : {
13777 "check" : [
13778 "admin",
13779 "qmanager",
13780 "audit"
13781 ]
13782 },
13783 "returns" : {
13784 "properties" : {
13785 "avgbytes" : {
13786 "description" : "Average size of stored mails in bytes.",
13787 "type" : "number"
13788 },
13789 "avgspam" : {
13790 "description" : "Average spam level.",
13791 "type" : "number"
13792 },
13793 "count" : {
13794 "description" : "Number of stored mails.",
13795 "type" : "integer"
13796 },
13797 "mbytes" : {
13798 "description" : "Estimated disk space usage in MByte.",
13799 "type" : "number"
13800 }
13801 },
13802 "type" : "object"
13803 }
13804 }
13805 },
13806 "leaf" : 1,
13807 "path" : "/quarantine/spamstatus",
13808 "text" : "spamstatus"
13809 },
13810 {
13811 "info" : {
13812 "GET" : {
6bd70b95 13813 "allowtoken" : 1,
9fda36b0
DM
13814 "description" : "Get a list of users with whitelist/blacklist setttings.",
13815 "method" : "GET",
13816 "name" : "quarusers",
13817 "parameters" : {
241ac83c
TL
13818 "additionalProperties" : 0,
13819 "properties" : {
13820 "list" : {
13821 "description" : "If set, limits the result to the given list.",
13822 "enum" : [
13823 "BL",
13824 "WL"
13825 ],
13826 "optional" : 1,
13827 "type" : "string"
13828 }
13829 }
9fda36b0
DM
13830 },
13831 "permissions" : {
13832 "check" : [
13833 "admin",
13834 "qmanager",
13835 "audit"
13836 ]
13837 },
13838 "returns" : {
13839 "items" : {
13840 "properties" : {
13841 "mail" : {
13842 "description" : "the receiving email",
13843 "type" : "string"
410dc2c9
DM
13844 }
13845 },
9fda36b0
DM
13846 "type" : "object"
13847 },
13848 "type" : "array"
13849 }
13850 }
13851 },
13852 "leaf" : 1,
13853 "path" : "/quarantine/quarusers",
13854 "text" : "quarusers"
13855 },
13856 {
13857 "info" : {
13858 "GET" : {
6bd70b95 13859 "allowtoken" : 1,
9fda36b0
DM
13860 "description" : "Get a list of quarantined spam mails in the given timeframe (default the last 24 hours) for the given user.",
13861 "method" : "GET",
13862 "name" : "spam",
13863 "parameters" : {
13864 "additionalProperties" : 0,
13865 "properties" : {
13866 "endtime" : {
13867 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13868 "minimum" : 1,
13869 "optional" : 1,
13870 "type" : "integer",
13871 "typetext" : "<integer> (1 - N)"
13872 },
13873 "pmail" : {
13874 "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.",
241ac83c
TL
13875 "maxLength" : 512,
13876 "minLength" : 3,
9fda36b0 13877 "optional" : 1,
241ac83c
TL
13878 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
13879 "type" : "string"
9fda36b0
DM
13880 },
13881 "starttime" : {
13882 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13883 "minimum" : 0,
13884 "optional" : 1,
13885 "type" : "integer",
13886 "typetext" : "<integer> (0 - N)"
410dc2c9
DM
13887 }
13888 }
13889 },
9fda36b0
DM
13890 "permissions" : {
13891 "check" : [
13892 "admin",
13893 "qmanager",
13894 "audit",
13895 "quser"
13896 ]
13897 },
13898 "returns" : {
13899 "items" : {
13900 "properties" : {
13901 "bytes" : {
13902 "description" : "Size of raw email.",
13903 "type" : "integer"
13904 },
13905 "envelope_sender" : {
13906 "description" : "SMTP envelope sender.",
13907 "type" : "string"
13908 },
13909 "from" : {
13910 "description" : "Header 'From' field.",
13911 "type" : "string"
13912 },
13913 "id" : {
13914 "description" : "Unique ID",
13915 "type" : "string"
13916 },
13917 "receiver" : {
13918 "description" : "Receiver email address",
13919 "type" : "string"
13920 },
13921 "sender" : {
13922 "description" : "Header 'Sender' field.",
13923 "optional" : 1,
13924 "type" : "string"
13925 },
13926 "spamlevel" : {
13927 "description" : "Spam score.",
13928 "type" : "number"
13929 },
13930 "subject" : {
13931 "description" : "Header 'Subject' field.",
13932 "type" : "string"
13933 },
13934 "time" : {
13935 "description" : "Receive time stamp",
13936 "type" : "integer"
410dc2c9
DM
13937 }
13938 },
9fda36b0 13939 "type" : "object"
410dc2c9 13940 },
9fda36b0
DM
13941 "type" : "array"
13942 }
13943 }
13944 },
13945 "leaf" : 1,
13946 "path" : "/quarantine/spam",
13947 "text" : "spam"
13948 },
13949 {
13950 "info" : {
13951 "GET" : {
6bd70b95 13952 "allowtoken" : 1,
9fda36b0
DM
13953 "description" : "Get a list of quarantined virus mails in the given timeframe (default the last 24 hours).",
13954 "method" : "GET",
13955 "name" : "virus",
13956 "parameters" : {
13957 "additionalProperties" : 0,
13958 "properties" : {
13959 "endtime" : {
13960 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
13961 "minimum" : 1,
13962 "optional" : 1,
13963 "type" : "integer",
13964 "typetext" : "<integer> (1 - N)"
410dc2c9 13965 },
9fda36b0
DM
13966 "starttime" : {
13967 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
13968 "minimum" : 0,
13969 "optional" : 1,
13970 "type" : "integer",
13971 "typetext" : "<integer> (0 - N)"
410dc2c9
DM
13972 }
13973 }
13974 },
9fda36b0
DM
13975 "permissions" : {
13976 "check" : [
13977 "admin",
13978 "qmanager",
13979 "audit"
13980 ]
13981 },
13982 "returns" : {
13983 "items" : {
13984 "properties" : {
13985 "bytes" : {
13986 "description" : "Size of raw email.",
13987 "type" : "integer"
13988 },
13989 "envelope_sender" : {
13990 "description" : "SMTP envelope sender.",
13991 "type" : "string"
13992 },
13993 "from" : {
13994 "description" : "Header 'From' field.",
13995 "type" : "string"
13996 },
13997 "id" : {
13998 "description" : "Unique ID",
13999 "type" : "string"
14000 },
14001 "receiver" : {
14002 "description" : "Receiver email address",
14003 "type" : "string"
14004 },
14005 "sender" : {
14006 "description" : "Header 'Sender' field.",
14007 "optional" : 1,
14008 "type" : "string"
14009 },
14010 "subject" : {
14011 "description" : "Header 'Subject' field.",
14012 "type" : "string"
14013 },
14014 "time" : {
14015 "description" : "Receive time stamp",
14016 "type" : "integer"
14017 },
14018 "virusname" : {
14019 "description" : "Virus name.",
14020 "type" : "string"
d7cd791b
DM
14021 }
14022 },
9fda36b0
DM
14023 "type" : "object"
14024 },
14025 "type" : "array"
14026 }
14027 }
14028 },
14029 "leaf" : 1,
14030 "path" : "/quarantine/virus",
14031 "text" : "virus"
14032 },
d210277a
TL
14033 {
14034 "info" : {
14035 "GET" : {
6bd70b95 14036 "allowtoken" : 1,
d210277a
TL
14037 "description" : "Get a list of quarantined attachment mails in the given timeframe (default the last 24 hours).",
14038 "method" : "GET",
14039 "name" : "attachment",
14040 "parameters" : {
14041 "additionalProperties" : 0,
14042 "properties" : {
14043 "endtime" : {
14044 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
14045 "minimum" : 1,
14046 "optional" : 1,
14047 "type" : "integer",
14048 "typetext" : "<integer> (1 - N)"
14049 },
14050 "starttime" : {
14051 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
14052 "minimum" : 0,
14053 "optional" : 1,
14054 "type" : "integer",
14055 "typetext" : "<integer> (0 - N)"
14056 }
14057 }
14058 },
14059 "permissions" : {
14060 "check" : [
14061 "admin",
14062 "qmanager",
14063 "audit"
14064 ]
14065 },
14066 "returns" : {
14067 "items" : {
14068 "properties" : {
14069 "bytes" : {
14070 "description" : "Size of raw email.",
14071 "type" : "integer"
14072 },
14073 "envelope_sender" : {
14074 "description" : "SMTP envelope sender.",
14075 "type" : "string"
14076 },
14077 "from" : {
14078 "description" : "Header 'From' field.",
14079 "type" : "string"
14080 },
14081 "id" : {
14082 "description" : "Unique ID",
14083 "type" : "string"
14084 },
14085 "receiver" : {
14086 "description" : "Receiver email address",
14087 "type" : "string"
14088 },
14089 "sender" : {
14090 "description" : "Header 'Sender' field.",
14091 "optional" : 1,
14092 "type" : "string"
14093 },
14094 "subject" : {
14095 "description" : "Header 'Subject' field.",
14096 "type" : "string"
14097 },
14098 "time" : {
14099 "description" : "Receive time stamp",
14100 "type" : "integer"
14101 }
14102 },
14103 "type" : "object"
14104 },
14105 "type" : "array"
14106 }
14107 }
14108 },
14109 "leaf" : 1,
14110 "path" : "/quarantine/attachment",
14111 "text" : "attachment"
14112 },
9fda36b0
DM
14113 {
14114 "info" : {
14115 "GET" : {
6bd70b95 14116 "allowtoken" : 1,
9fda36b0
DM
14117 "description" : "Get Virus Quarantine Status",
14118 "method" : "GET",
14119 "name" : "virusstatus",
14120 "parameters" : {
14121 "additionalProperties" : 0
14122 },
14123 "permissions" : {
14124 "check" : [
14125 "admin",
14126 "qmanager",
14127 "audit"
14128 ]
14129 },
14130 "returns" : {
14131 "properties" : {
14132 "avgbytes" : {
14133 "description" : "Average size of stored mails in bytes.",
14134 "type" : "number"
14135 },
14136 "count" : {
14137 "description" : "Number of stored mails.",
14138 "type" : "integer"
14139 },
14140 "mbytes" : {
14141 "description" : "Estimated disk space usage in MByte.",
14142 "type" : "number"
d7cd791b 14143 }
9fda36b0
DM
14144 },
14145 "type" : "object"
14146 }
d7cd791b 14147 }
9fda36b0
DM
14148 },
14149 "leaf" : 1,
14150 "path" : "/quarantine/virusstatus",
14151 "text" : "virusstatus"
14152 },
14153 {
d7cd791b
DM
14154 "info" : {
14155 "GET" : {
6bd70b95 14156 "allowtoken" : 1,
9fda36b0 14157 "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 14158 "method" : "GET",
9fda36b0 14159 "name" : "content",
d7cd791b
DM
14160 "parameters" : {
14161 "additionalProperties" : 0,
14162 "properties" : {
9fda36b0
DM
14163 "id" : {
14164 "description" : "Unique ID",
274b47fc
DM
14165 "maxLength" : 60,
14166 "pattern" : "C\\d+R\\d+T\\d+",
9fda36b0
DM
14167 "type" : "string"
14168 },
14169 "raw" : {
14170 "default" : 0,
241ac83c 14171 "description" : "Display 'raw' eml data. Deactivates size limit.",
9fda36b0
DM
14172 "optional" : 1,
14173 "type" : "boolean",
14174 "typetext" : "<boolean>"
d7cd791b
DM
14175 }
14176 }
14177 },
14178 "permissions" : {
9fda36b0
DM
14179 "check" : [
14180 "admin",
14181 "qmanager",
14182 "audit",
14183 "quser"
14184 ]
d7cd791b
DM
14185 },
14186 "returns" : {
9fda36b0
DM
14187 "properties" : {
14188 "bytes" : {
14189 "description" : "Size of raw email.",
14190 "type" : "integer"
14191 },
14192 "content" : {
14193 "description" : "Raw email data (first 4096 bytes). Useful for preview. NOTE: The 'htmlmail' formatter displays the whole email.",
14194 "type" : "string"
14195 },
14196 "envelope_sender" : {
14197 "description" : "SMTP envelope sender.",
14198 "type" : "string"
14199 },
14200 "from" : {
14201 "description" : "Header 'From' field.",
14202 "type" : "string"
14203 },
14204 "header" : {
14205 "description" : "Raw email header data.",
14206 "type" : "string"
14207 },
14208 "id" : {
14209 "description" : "Unique ID",
14210 "type" : "string"
14211 },
14212 "receiver" : {
14213 "description" : "Receiver email address",
14214 "type" : "string"
14215 },
14216 "sender" : {
14217 "description" : "Header 'Sender' field.",
14218 "optional" : 1,
14219 "type" : "string"
14220 },
14221 "spaminfo" : {
14222 "description" : "Information about matched spam tests (name, score, desc, url).",
14223 "type" : "array"
14224 },
14225 "spamlevel" : {
14226 "description" : "Spam score.",
14227 "type" : "number"
14228 },
14229 "subject" : {
14230 "description" : "Header 'Subject' field.",
14231 "type" : "string"
14232 },
14233 "time" : {
14234 "description" : "Receive time stamp",
14235 "type" : "integer"
14236 }
d7cd791b 14237 },
9fda36b0
DM
14238 "type" : "object"
14239 }
14240 },
14241 "POST" : {
6bd70b95 14242 "allowtoken" : 1,
9fda36b0
DM
14243 "description" : "Execute quarantine actions.",
14244 "method" : "POST",
14245 "name" : "action",
14246 "parameters" : {
14247 "additionalProperties" : 0,
14248 "properties" : {
14249 "action" : {
14250 "description" : "Action - specify what you want to do with the mail.",
14251 "enum" : [
14252 "whitelist",
14253 "blacklist",
14254 "deliver",
14255 "delete"
14256 ],
14257 "type" : "string"
14258 },
14259 "id" : {
445686c9 14260 "description" : "Unique IDs, seperate with ;",
445686c9 14261 "pattern" : "C\\d+R\\d+T\\d+(;C\\d+R\\d+T\\d+)*",
9fda36b0 14262 "type" : "string"
410dc2c9 14263 }
9fda36b0
DM
14264 }
14265 },
14266 "permissions" : {
14267 "check" : [
14268 "admin",
14269 "qmanager",
14270 "quser"
14271 ]
14272 },
14273 "protected" : 1,
14274 "returns" : {
14275 "type" : "null"
410dc2c9
DM
14276 }
14277 }
14278 },
9fda36b0
DM
14279 "leaf" : 1,
14280 "path" : "/quarantine/content",
14281 "text" : "content"
d210277a
TL
14282 },
14283 {
14284 "info" : {
14285 "GET" : {
6bd70b95 14286 "allowtoken" : 1,
d210277a
TL
14287 "description" : "Get Attachments for E-Mail in Quarantine.",
14288 "method" : "GET",
14289 "name" : "listattachments",
14290 "parameters" : {
14291 "additionalProperties" : 0,
14292 "properties" : {
14293 "id" : {
14294 "description" : "Unique ID",
14295 "maxLength" : 60,
14296 "pattern" : "C\\d+R\\d+T\\d+",
14297 "type" : "string"
14298 }
14299 }
14300 },
14301 "permissions" : {
14302 "check" : [
14303 "admin",
14304 "qmanager",
14305 "audit"
14306 ]
14307 },
14308 "returns" : {
14309 "items" : {
14310 "properties" : {
14311 "content-type" : {
14312 "description" : "Raw email header data.",
14313 "type" : "string"
14314 },
14315 "id" : {
14316 "description" : "Attachment ID",
14317 "type" : "integer"
14318 },
14319 "name" : {
14320 "description" : "Raw email header data.",
14321 "type" : "string"
14322 },
14323 "size" : {
14324 "description" : "Size of raw attachment in bytes.",
14325 "type" : "integer"
14326 }
14327 },
14328 "type" : "object"
14329 },
14330 "type" : "array"
14331 }
14332 }
14333 },
14334 "leaf" : 1,
14335 "path" : "/quarantine/listattachments",
14336 "text" : "listattachments"
14337 },
14338 {
14339 "info" : {
14340 "GET" : {
6bd70b95 14341 "allowtoken" : 1,
d210277a
TL
14342 "description" : "Download E-Mail or Attachment from Quarantine.",
14343 "download" : 1,
14344 "method" : "GET",
14345 "name" : "download",
14346 "parameters" : {
14347 "additionalProperties" : 0,
14348 "properties" : {
14349 "attachmentid" : {
14350 "description" : "The Attachment ID for the mail.",
14351 "optional" : 1,
14352 "type" : "integer",
14353 "typetext" : "<integer>"
14354 },
14355 "mailid" : {
14356 "description" : "Unique ID",
14357 "maxLength" : 60,
14358 "pattern" : "C\\d+R\\d+T\\d+",
14359 "type" : "string"
14360 }
14361 }
14362 },
14363 "permissions" : {
14364 "check" : [
14365 "admin",
14366 "qmanager",
14367 "audit",
14368 "quser"
14369 ]
14370 },
14371 "returns" : {
14372 "type" : "object"
14373 }
14374 }
14375 },
14376 "leaf" : 1,
14377 "path" : "/quarantine/download",
14378 "text" : "download"
410dc2c9
DM
14379 }
14380 ],
14381 "info" : {
14382 "GET" : {
6bd70b95 14383 "allowtoken" : 1,
9fda36b0 14384 "description" : "Directory index.",
410dc2c9
DM
14385 "method" : "GET",
14386 "name" : "index",
14387 "parameters" : {
14388 "additionalProperties" : 0
14389 },
14390 "permissions" : {
14391 "user" : "all"
14392 },
14393 "returns" : {
14394 "items" : {
14395 "properties" : {},
14396 "type" : "object"
14397 },
14398 "links" : [
14399 {
9fda36b0 14400 "href" : "{name}",
410dc2c9
DM
14401 "rel" : "child"
14402 }
14403 ],
14404 "type" : "array"
14405 }
14406 }
14407 },
14408 "leaf" : 0,
9fda36b0
DM
14409 "path" : "/quarantine",
14410 "text" : "quarantine"
410dc2c9
DM
14411 },
14412 {
14413 "children" : [
a55e94a6
DM
14414 {
14415 "children" : [
14416 {
14417 "info" : {
a55e94a6 14418 "GET" : {
6bd70b95 14419 "allowtoken" : 1,
9fda36b0 14420 "description" : "Detailed Contact Statistics.",
a55e94a6 14421 "method" : "GET",
9fda36b0 14422 "name" : "contactdetails",
a55e94a6
DM
14423 "parameters" : {
14424 "additionalProperties" : 0,
9fda36b0
DM
14425 "properties" : {
14426 "contact" : {
14427 "description" : "Contact email address.",
14428 "maxLength" : 512,
14429 "minLength" : 3,
241ac83c 14430 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
9fda36b0 14431 "type" : "string"
a55e94a6 14432 },
9fda36b0
DM
14433 "day" : {
14434 "description" : "Day of month. Get statistics for a single day.",
14435 "maximum" : 31,
14436 "minimum" : 1,
a55e94a6
DM
14437 "optional" : 1,
14438 "type" : "integer",
9fda36b0 14439 "typetext" : "<integer> (1 - 31)"
a55e94a6 14440 },
9fda36b0
DM
14441 "endtime" : {
14442 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
14443 "minimum" : 1,
a55e94a6 14444 "optional" : 1,
9fda36b0
DM
14445 "type" : "integer",
14446 "typetext" : "<integer> (1 - N)"
a55e94a6 14447 },
9fda36b0
DM
14448 "filter" : {
14449 "description" : "Sender address filter.",
14450 "maxLength" : 512,
a55e94a6
DM
14451 "optional" : 1,
14452 "type" : "string",
14453 "typetext" : "<string>"
14454 },
9fda36b0
DM
14455 "month" : {
14456 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
14457 "maximum" : 12,
14458 "minimum" : 1,
a55e94a6 14459 "optional" : 1,
9fda36b0
DM
14460 "type" : "integer",
14461 "typetext" : "<integer> (1 - 12)"
a55e94a6 14462 },
9fda36b0
DM
14463 "orderby" : {
14464 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
14465 "maxLength" : 4096,
a55e94a6
DM
14466 "optional" : 1,
14467 "type" : "string",
14468 "typetext" : "<string>"
14469 },
9fda36b0
DM
14470 "starttime" : {
14471 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
14472 "minimum" : 0,
a55e94a6 14473 "optional" : 1,
9fda36b0
DM
14474 "type" : "integer",
14475 "typetext" : "<integer> (0 - N)"
a55e94a6 14476 },
9fda36b0
DM
14477 "year" : {
14478 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
14479 "maximum" : 3000,
14480 "minimum" : 1900,
14481 "optional" : 1,
14482 "type" : "integer",
14483 "typetext" : "<integer> (1900 - 3000)"
a55e94a6
DM
14484 }
14485 }
14486 },
9fda36b0
DM
14487 "permissions" : {
14488 "check" : [
14489 "admin",
14490 "qmanager",
14491 "audit"
14492 ]
14493 },
a55e94a6 14494 "returns" : {
9fda36b0
DM
14495 "items" : {
14496 "properties" : {
14497 "blocked" : {
14498 "description" : "Mail was blocked.",
14499 "type" : "boolean"
14500 },
14501 "bytes" : {
14502 "description" : "Mail traffic (Bytes).",
14503 "type" : "number"
14504 },
14505 "sender" : {
14506 "description" : "Sender email.",
14507 "type" : "string"
14508 },
14509 "spamlevel" : {
14510 "description" : "Spam score.",
14511 "type" : "number"
14512 },
14513 "time" : {
14514 "description" : "Receive time stamp",
14515 "type" : "integer"
14516 },
14517 "virusinfo" : {
14518 "description" : "Virus name.",
14519 "optional" : 1,
14520 "type" : "string"
14521 }
14522 },
14523 "type" : "object"
14524 },
14525 "type" : "array"
a55e94a6
DM
14526 }
14527 }
14528 },
14529 "leaf" : 1,
9fda36b0
DM
14530 "path" : "/statistics/contact/{contact}",
14531 "text" : "{contact}"
a55e94a6
DM
14532 }
14533 ],
14534 "info" : {
14535 "GET" : {
6bd70b95 14536 "allowtoken" : 1,
9fda36b0 14537 "description" : "Contact Address Statistics.",
a55e94a6 14538 "method" : "GET",
9fda36b0 14539 "name" : "contact",
a55e94a6
DM
14540 "parameters" : {
14541 "additionalProperties" : 0,
14542 "properties" : {
9fda36b0
DM
14543 "day" : {
14544 "description" : "Day of month. Get statistics for a single day.",
14545 "maximum" : 31,
14546 "minimum" : 1,
a55e94a6
DM
14547 "optional" : 1,
14548 "type" : "integer",
9fda36b0 14549 "typetext" : "<integer> (1 - 31)"
a55e94a6 14550 },
9fda36b0
DM
14551 "endtime" : {
14552 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
14553 "minimum" : 1,
410dc2c9 14554 "optional" : 1,
9fda36b0
DM
14555 "type" : "integer",
14556 "typetext" : "<integer> (1 - N)"
410dc2c9 14557 },
9fda36b0
DM
14558 "filter" : {
14559 "description" : "Contact address filter.",
14560 "maxLength" : 512,
14561 "optional" : 1,
410dc2c9
DM
14562 "type" : "string",
14563 "typetext" : "<string>"
14564 },
9fda36b0
DM
14565 "month" : {
14566 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
14567 "maximum" : 12,
14568 "minimum" : 1,
410dc2c9 14569 "optional" : 1,
9fda36b0
DM
14570 "type" : "integer",
14571 "typetext" : "<integer> (1 - 12)"
410dc2c9 14572 },
9fda36b0
DM
14573 "orderby" : {
14574 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
14575 "maxLength" : 4096,
14576 "optional" : 1,
410dc2c9
DM
14577 "type" : "string",
14578 "typetext" : "<string>"
9fda36b0
DM
14579 },
14580 "starttime" : {
14581 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
14582 "minimum" : 0,
14583 "optional" : 1,
14584 "type" : "integer",
14585 "typetext" : "<integer> (0 - N)"
14586 },
14587 "year" : {
14588 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
14589 "maximum" : 3000,
14590 "minimum" : 1900,
14591 "optional" : 1,
14592 "type" : "integer",
14593 "typetext" : "<integer> (1900 - 3000)"
410dc2c9
DM
14594 }
14595 }
14596 },
14597 "permissions" : {
9fda36b0
DM
14598 "check" : [
14599 "admin",
14600 "qmanager",
14601 "audit"
14602 ]
410dc2c9 14603 },
410dc2c9 14604 "returns" : {
9fda36b0
DM
14605 "items" : {
14606 "properties" : {
14607 "bytes" : {
14608 "description" : "Mail traffic (Bytes).",
14609 "type" : "number"
14610 },
14611 "contact" : {
14612 "description" : "Contact email.",
14613 "type" : "string"
14614 },
14615 "count" : {
14616 "description" : "Mail count.",
14617 "optional" : 1,
14618 "type" : "number"
14619 },
14620 "viruscount" : {
14621 "description" : "Number of sent virus mails.",
14622 "optional" : 1,
14623 "type" : "number"
14624 }
410dc2c9 14625 },
9fda36b0 14626 "type" : "object"
410dc2c9 14627 },
9fda36b0
DM
14628 "links" : [
14629 {
14630 "href" : "{contact}",
14631 "rel" : "child"
14632 }
14633 ],
14634 "type" : "array"
410dc2c9
DM
14635 }
14636 }
14637 },
9fda36b0
DM
14638 "leaf" : 0,
14639 "path" : "/statistics/contact",
14640 "text" : "contact"
410dc2c9
DM
14641 },
14642 {
9fda36b0
DM
14643 "children" : [
14644 {
14645 "info" : {
14646 "GET" : {
6bd70b95 14647 "allowtoken" : 1,
9fda36b0
DM
14648 "description" : "Detailed Sender Statistics.",
14649 "method" : "GET",
14650 "name" : "senderdetails",
14651 "parameters" : {
14652 "additionalProperties" : 0,
14653 "properties" : {
14654 "day" : {
14655 "description" : "Day of month. Get statistics for a single day.",
14656 "maximum" : 31,
14657 "minimum" : 1,
14658 "optional" : 1,
14659 "type" : "integer",
14660 "typetext" : "<integer> (1 - 31)"
14661 },
14662 "endtime" : {
14663 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
14664 "minimum" : 1,
14665 "optional" : 1,
14666 "type" : "integer",
14667 "typetext" : "<integer> (1 - N)"
14668 },
14669 "filter" : {
14670 "description" : "Receiver address filter.",
14671 "maxLength" : 512,
14672 "optional" : 1,
14673 "type" : "string",
14674 "typetext" : "<string>"
14675 },
14676 "month" : {
14677 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
14678 "maximum" : 12,
14679 "minimum" : 1,
14680 "optional" : 1,
14681 "type" : "integer",
14682 "typetext" : "<integer> (1 - 12)"
14683 },
14684 "orderby" : {
14685 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
14686 "maxLength" : 4096,
14687 "optional" : 1,
14688 "type" : "string",
14689 "typetext" : "<string>"
14690 },
14691 "sender" : {
14692 "description" : "Sender email address.",
14693 "maxLength" : 512,
14694 "minLength" : 3,
241ac83c 14695 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
9fda36b0
DM
14696 "type" : "string"
14697 },
14698 "starttime" : {
14699 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
14700 "minimum" : 0,
14701 "optional" : 1,
14702 "type" : "integer",
14703 "typetext" : "<integer> (0 - N)"
14704 },
14705 "year" : {
14706 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
14707 "maximum" : 3000,
14708 "minimum" : 1900,
14709 "optional" : 1,
14710 "type" : "integer",
14711 "typetext" : "<integer> (1900 - 3000)"
14712 }
14713 }
14714 },
14715 "permissions" : {
14716 "check" : [
14717 "admin",
14718 "qmanager",
14719 "audit"
14720 ]
14721 },
14722 "returns" : {
14723 "items" : {
14724 "properties" : {
14725 "blocked" : {
14726 "description" : "Mail was blocked.",
14727 "type" : "boolean"
14728 },
14729 "bytes" : {
14730 "description" : "Mail traffic (Bytes).",
14731 "type" : "number"
14732 },
14733 "receiver" : {
14734 "description" : "Receiver email.",
14735 "type" : "string"
14736 },
14737 "spamlevel" : {
14738 "description" : "Spam score.",
14739 "type" : "number"
14740 },
14741 "time" : {
14742 "description" : "Receive time stamp",
14743 "type" : "integer"
14744 },
14745 "virusinfo" : {
14746 "description" : "Virus name.",
14747 "optional" : 1,
14748 "type" : "string"
14749 }
14750 },
14751 "type" : "object"
14752 },
14753 "type" : "array"
14754 }
14755 }
14756 },
14757 "leaf" : 1,
14758 "path" : "/statistics/sender/{sender}",
14759 "text" : "{sender}"
14760 }
14761 ],
410dc2c9 14762 "info" : {
9fda36b0 14763 "GET" : {
6bd70b95 14764 "allowtoken" : 1,
9fda36b0
DM
14765 "description" : "Sender Address Statistics.",
14766 "method" : "GET",
14767 "name" : "sender",
410dc2c9
DM
14768 "parameters" : {
14769 "additionalProperties" : 0,
14770 "properties" : {
9fda36b0
DM
14771 "day" : {
14772 "description" : "Day of month. Get statistics for a single day.",
14773 "maximum" : 31,
14774 "minimum" : 1,
14775 "optional" : 1,
14776 "type" : "integer",
14777 "typetext" : "<integer> (1 - 31)"
14778 },
14779 "endtime" : {
14780 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
14781 "minimum" : 1,
14782 "optional" : 1,
14783 "type" : "integer",
14784 "typetext" : "<integer> (1 - N)"
14785 },
14786 "filter" : {
14787 "description" : "Sender address filter.",
14788 "maxLength" : 512,
14789 "optional" : 1,
410dc2c9
DM
14790 "type" : "string",
14791 "typetext" : "<string>"
14792 },
9fda36b0
DM
14793 "month" : {
14794 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
14795 "maximum" : 12,
14796 "minimum" : 1,
14797 "optional" : 1,
14798 "type" : "integer",
14799 "typetext" : "<integer> (1 - 12)"
14800 },
14801 "orderby" : {
14802 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
14803 "maxLength" : 4096,
14804 "optional" : 1,
410dc2c9
DM
14805 "type" : "string",
14806 "typetext" : "<string>"
9fda36b0
DM
14807 },
14808 "starttime" : {
14809 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
14810 "minimum" : 0,
14811 "optional" : 1,
14812 "type" : "integer",
14813 "typetext" : "<integer> (0 - N)"
14814 },
14815 "year" : {
14816 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
14817 "maximum" : 3000,
14818 "minimum" : 1900,
14819 "optional" : 1,
14820 "type" : "integer",
14821 "typetext" : "<integer> (1900 - 3000)"
410dc2c9
DM
14822 }
14823 }
14824 },
a55e94a6 14825 "permissions" : {
9fda36b0
DM
14826 "check" : [
14827 "admin",
14828 "qmanager",
14829 "audit"
14830 ]
a55e94a6 14831 },
410dc2c9 14832 "returns" : {
9fda36b0
DM
14833 "items" : {
14834 "properties" : {
14835 "bytes" : {
14836 "description" : "Mail traffic (Bytes).",
14837 "type" : "number"
14838 },
14839 "count" : {
14840 "description" : "Mail count.",
14841 "optional" : 1,
14842 "type" : "number"
14843 },
14844 "sender" : {
14845 "description" : "Sender email.",
14846 "type" : "string"
14847 },
14848 "viruscount" : {
14849 "description" : "Number of sent virus mails.",
14850 "optional" : 1,
14851 "type" : "number"
14852 }
14853 },
14854 "type" : "object"
14855 },
14856 "links" : [
14857 {
14858 "href" : "{sender}",
14859 "rel" : "child"
14860 }
14861 ],
14862 "type" : "array"
410dc2c9 14863 }
9fda36b0
DM
14864 }
14865 },
14866 "leaf" : 0,
14867 "path" : "/statistics/sender",
14868 "text" : "sender"
14869 },
d7cd791b
DM
14870 {
14871 "children" : [
14872 {
14873 "info" : {
9fda36b0 14874 "GET" : {
6bd70b95 14875 "allowtoken" : 1,
9fda36b0
DM
14876 "description" : "Detailed Receiver Statistics.",
14877 "method" : "GET",
14878 "name" : "receiverdetails",
d7cd791b
DM
14879 "parameters" : {
14880 "additionalProperties" : 0,
14881 "properties" : {
9fda36b0
DM
14882 "day" : {
14883 "description" : "Day of month. Get statistics for a single day.",
14884 "maximum" : 31,
14885 "minimum" : 1,
14886 "optional" : 1,
14887 "type" : "integer",
14888 "typetext" : "<integer> (1 - 31)"
14889 },
14890 "endtime" : {
14891 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
14892 "minimum" : 1,
14893 "optional" : 1,
14894 "type" : "integer",
14895 "typetext" : "<integer> (1 - N)"
14896 },
14897 "filter" : {
14898 "description" : "Sender address filter.",
d7cd791b 14899 "maxLength" : 512,
9fda36b0
DM
14900 "optional" : 1,
14901 "type" : "string",
14902 "typetext" : "<string>"
d7cd791b 14903 },
9fda36b0
DM
14904 "month" : {
14905 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
14906 "maximum" : 12,
14907 "minimum" : 1,
14908 "optional" : 1,
14909 "type" : "integer",
14910 "typetext" : "<integer> (1 - 12)"
14911 },
14912 "orderby" : {
14913 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
14914 "maxLength" : 4096,
d7cd791b
DM
14915 "optional" : 1,
14916 "type" : "string",
14917 "typetext" : "<string>"
9fda36b0
DM
14918 },
14919 "receiver" : {
14920 "description" : "Receiver email address.",
14921 "maxLength" : 512,
14922 "minLength" : 3,
241ac83c 14923 "pattern" : "(?:[^\\s\\/\\\\@]+\\@[^\\s\\/\\\\@]+)",
9fda36b0
DM
14924 "type" : "string"
14925 },
14926 "starttime" : {
14927 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
14928 "minimum" : 0,
14929 "optional" : 1,
14930 "type" : "integer",
14931 "typetext" : "<integer> (0 - N)"
14932 },
14933 "year" : {
14934 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
14935 "maximum" : 3000,
14936 "minimum" : 1900,
14937 "optional" : 1,
14938 "type" : "integer",
14939 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
14940 }
14941 }
14942 },
14943 "permissions" : {
14944 "check" : [
14945 "admin",
14946 "qmanager",
9fda36b0 14947 "audit"
d7cd791b
DM
14948 ]
14949 },
d7cd791b 14950 "returns" : {
9fda36b0
DM
14951 "items" : {
14952 "properties" : {
14953 "blocked" : {
14954 "description" : "Mail was blocked.",
14955 "type" : "boolean"
14956 },
14957 "bytes" : {
14958 "description" : "Mail traffic (Bytes).",
14959 "type" : "number"
14960 },
14961 "sender" : {
14962 "description" : "Sender email.",
14963 "type" : "string"
14964 },
14965 "spamlevel" : {
14966 "description" : "Spam score.",
14967 "type" : "number"
14968 },
14969 "time" : {
14970 "description" : "Receive time stamp",
14971 "type" : "integer"
14972 },
14973 "virusinfo" : {
14974 "description" : "Virus name.",
14975 "optional" : 1,
14976 "type" : "string"
14977 }
14978 },
14979 "type" : "object"
14980 },
14981 "type" : "array"
d7cd791b
DM
14982 }
14983 }
14984 },
14985 "leaf" : 1,
9fda36b0
DM
14986 "path" : "/statistics/receiver/{receiver}",
14987 "text" : "{receiver}"
d7cd791b
DM
14988 }
14989 ],
14990 "info" : {
14991 "GET" : {
6bd70b95 14992 "allowtoken" : 1,
9fda36b0 14993 "description" : "Receiver Address Statistics.",
d7cd791b 14994 "method" : "GET",
9fda36b0 14995 "name" : "receiver",
d7cd791b
DM
14996 "parameters" : {
14997 "additionalProperties" : 0,
14998 "properties" : {
9fda36b0
DM
14999 "day" : {
15000 "description" : "Day of month. Get statistics for a single day.",
15001 "maximum" : 31,
15002 "minimum" : 1,
15003 "optional" : 1,
15004 "type" : "integer",
15005 "typetext" : "<integer> (1 - 31)"
15006 },
15007 "endtime" : {
15008 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
15009 "minimum" : 1,
15010 "optional" : 1,
15011 "type" : "integer",
15012 "typetext" : "<integer> (1 - N)"
15013 },
15014 "filter" : {
15015 "description" : "Receiver address filter.",
15016 "maxLength" : 512,
15017 "optional" : 1,
15018 "type" : "string",
15019 "typetext" : "<string>"
15020 },
15021 "month" : {
15022 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
15023 "maximum" : 12,
15024 "minimum" : 1,
15025 "optional" : 1,
15026 "type" : "integer",
15027 "typetext" : "<integer> (1 - 12)"
15028 },
15029 "orderby" : {
15030 "description" : "Remote sorting configuration(JSON, ExtJS compatible).",
15031 "maxLength" : 4096,
d7cd791b
DM
15032 "optional" : 1,
15033 "type" : "string",
15034 "typetext" : "<string>"
9fda36b0
DM
15035 },
15036 "starttime" : {
15037 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
15038 "minimum" : 0,
15039 "optional" : 1,
15040 "type" : "integer",
15041 "typetext" : "<integer> (0 - N)"
15042 },
15043 "year" : {
15044 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
15045 "maximum" : 3000,
15046 "minimum" : 1900,
15047 "optional" : 1,
15048 "type" : "integer",
15049 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
15050 }
15051 }
15052 },
15053 "permissions" : {
15054 "check" : [
15055 "admin",
15056 "qmanager",
9fda36b0 15057 "audit"
d7cd791b
DM
15058 ]
15059 },
15060 "returns" : {
15061 "items" : {
15062 "properties" : {
9fda36b0
DM
15063 "bytes" : {
15064 "description" : "Mail traffic (Bytes).",
15065 "type" : "number"
15066 },
15067 "count" : {
15068 "description" : "Mail count.",
15069 "optional" : 1,
15070 "type" : "number"
15071 },
15072 "receiver" : {
15073 "description" : "Sender email.",
d7cd791b 15074 "type" : "string"
9fda36b0
DM
15075 },
15076 "spamcount" : {
15077 "description" : "Number of sent spam mails.",
15078 "optional" : 1,
15079 "type" : "number"
15080 },
15081 "viruscount" : {
15082 "description" : "Number of sent virus mails.",
15083 "optional" : 1,
15084 "type" : "number"
d7cd791b
DM
15085 }
15086 },
15087 "type" : "object"
15088 },
9fda36b0
DM
15089 "links" : [
15090 {
15091 "href" : "{receiver}",
15092 "rel" : "child"
d7cd791b 15093 }
9fda36b0
DM
15094 ],
15095 "type" : "array"
d7cd791b
DM
15096 }
15097 }
15098 },
15099 "leaf" : 0,
9fda36b0
DM
15100 "path" : "/statistics/receiver",
15101 "text" : "receiver"
d7cd791b
DM
15102 },
15103 {
d7cd791b
DM
15104 "info" : {
15105 "GET" : {
6bd70b95 15106 "allowtoken" : 1,
9fda36b0 15107 "description" : "Mail Domains Statistics.",
d7cd791b 15108 "method" : "GET",
9fda36b0 15109 "name" : "domains",
d7cd791b
DM
15110 "parameters" : {
15111 "additionalProperties" : 0,
15112 "properties" : {
9fda36b0
DM
15113 "day" : {
15114 "description" : "Day of month. Get statistics for a single day.",
15115 "maximum" : 31,
15116 "minimum" : 1,
15117 "optional" : 1,
15118 "type" : "integer",
15119 "typetext" : "<integer> (1 - 31)"
15120 },
15121 "endtime" : {
15122 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
15123 "minimum" : 1,
15124 "optional" : 1,
15125 "type" : "integer",
15126 "typetext" : "<integer> (1 - N)"
15127 },
15128 "month" : {
15129 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
15130 "maximum" : 12,
15131 "minimum" : 1,
15132 "optional" : 1,
15133 "type" : "integer",
15134 "typetext" : "<integer> (1 - 12)"
15135 },
15136 "starttime" : {
15137 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
15138 "minimum" : 0,
d7cd791b 15139 "optional" : 1,
9fda36b0
DM
15140 "type" : "integer",
15141 "typetext" : "<integer> (0 - N)"
15142 },
15143 "year" : {
15144 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
15145 "maximum" : 3000,
15146 "minimum" : 1900,
15147 "optional" : 1,
15148 "type" : "integer",
15149 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
15150 }
15151 }
15152 },
15153 "permissions" : {
15154 "check" : [
15155 "admin",
15156 "qmanager",
9fda36b0 15157 "audit"
d7cd791b
DM
15158 ]
15159 },
15160 "returns" : {
15161 "items" : {
15162 "properties" : {
274b47fc
DM
15163 "bytes_in" : {
15164 "description" : "Incoming mail traffic (Bytes).",
15165 "type" : "number"
15166 },
15167 "bytes_out" : {
15168 "description" : "Outgoing mail traffic (Bytes).",
15169 "type" : "number"
15170 },
9fda36b0
DM
15171 "count_in" : {
15172 "description" : "Incoming mail count.",
15173 "type" : "number"
15174 },
15175 "count_out" : {
15176 "description" : "Outgoing mail count.",
15177 "type" : "number"
15178 },
15179 "domain" : {
15180 "description" : "Domain name.",
d7cd791b 15181 "type" : "string"
9fda36b0 15182 },
9fda36b0
DM
15183 "spamcount_in" : {
15184 "description" : "Incoming spam mails.",
15185 "type" : "number"
15186 },
15187 "spamcount_out" : {
15188 "description" : "Outgoing spam mails.",
15189 "type" : "number"
15190 },
15191 "viruscount_in" : {
15192 "description" : "Number of incoming virus mails.",
15193 "type" : "number"
15194 },
15195 "viruscount_out" : {
15196 "description" : "Number of outgoing virus mails.",
15197 "type" : "number"
d7cd791b
DM
15198 }
15199 },
15200 "type" : "object"
15201 },
15202 "type" : "array"
15203 }
9fda36b0
DM
15204 }
15205 },
15206 "leaf" : 1,
15207 "path" : "/statistics/domains",
15208 "text" : "domains"
15209 },
15210 {
15211 "info" : {
15212 "GET" : {
6bd70b95 15213 "allowtoken" : 1,
9fda36b0
DM
15214 "description" : "General Mail Statistics.",
15215 "method" : "GET",
15216 "name" : "mail",
d7cd791b
DM
15217 "parameters" : {
15218 "additionalProperties" : 0,
15219 "properties" : {
9fda36b0
DM
15220 "day" : {
15221 "description" : "Day of month. Get statistics for a single day.",
15222 "maximum" : 31,
15223 "minimum" : 1,
15224 "optional" : 1,
15225 "type" : "integer",
15226 "typetext" : "<integer> (1 - 31)"
d7cd791b 15227 },
9fda36b0
DM
15228 "endtime" : {
15229 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
15230 "minimum" : 1,
d7cd791b 15231 "optional" : 1,
9fda36b0
DM
15232 "type" : "integer",
15233 "typetext" : "<integer> (1 - N)"
15234 },
15235 "month" : {
15236 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
15237 "maximum" : 12,
15238 "minimum" : 1,
15239 "optional" : 1,
15240 "type" : "integer",
15241 "typetext" : "<integer> (1 - 12)"
15242 },
15243 "starttime" : {
15244 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
15245 "minimum" : 0,
15246 "optional" : 1,
15247 "type" : "integer",
15248 "typetext" : "<integer> (0 - N)"
15249 },
15250 "year" : {
15251 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
15252 "maximum" : 3000,
15253 "minimum" : 1900,
15254 "optional" : 1,
15255 "type" : "integer",
15256 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
15257 }
15258 }
15259 },
15260 "permissions" : {
15261 "check" : [
15262 "admin",
15263 "qmanager",
9fda36b0 15264 "audit"
d7cd791b
DM
15265 ]
15266 },
d7cd791b 15267 "returns" : {
9fda36b0
DM
15268 "properties" : {
15269 "avptime" : {
15270 "description" : "Average mail processing time in seconds.",
15271 "type" : "number"
15272 },
15273 "bounces_in" : {
15274 "description" : "Incoming bounce mail count (sender = <>).",
15275 "type" : "number"
15276 },
15277 "bounces_out" : {
15278 "description" : "Outgoing bounce mail count (sender = <>).",
15279 "type" : "number"
15280 },
15281 "bytes_in" : {
15282 "description" : "Incoming mail traffic (bytes).",
15283 "type" : "number"
15284 },
15285 "bytes_out" : {
15286 "description" : "Outgoing mail traffic (bytes).",
15287 "type" : "number"
15288 },
15289 "count" : {
15290 "description" : "Overall mail count (in and out).",
15291 "type" : "number"
15292 },
15293 "count_in" : {
15294 "description" : "Incoming mail count.",
15295 "type" : "number"
15296 },
15297 "count_out" : {
15298 "description" : "Outgoing mail count.",
15299 "type" : "number"
15300 },
15301 "glcount" : {
15302 "description" : "Number of greylisted mails.",
15303 "type" : "number"
15304 },
15305 "junk_in" : {
274b47fc 15306 "description" : "Incoming junk mail count (viruscount_in + spamcount_in + glcount + spfcount + rbl_rejects + pregreet_rejects).",
9fda36b0
DM
15307 "type" : "number"
15308 },
15309 "junk_out" : {
15310 "description" : "Outgoing junk mail count (viruscount_out + spamcount_out).",
15311 "type" : "number"
15312 },
274b47fc
DM
15313 "pregreet_rejects" : {
15314 "description" : "PREGREET recject count.",
15315 "type" : "integer"
15316 },
15317 "rbl_rejects" : {
15318 "description" : "Number of RBL rejects.",
15319 "type" : "integer"
15320 },
9fda36b0
DM
15321 "spamcount_in" : {
15322 "description" : "Incoming spam mails.",
15323 "type" : "number"
15324 },
15325 "spamcount_out" : {
15326 "description" : "Outgoing spam mails.",
15327 "type" : "number"
15328 },
15329 "spfcount" : {
15330 "description" : "Mails rejected by SPF.",
15331 "type" : "number"
15332 },
15333 "viruscount_in" : {
15334 "description" : "Number of incoming virus mails.",
15335 "type" : "number"
15336 },
15337 "viruscount_out" : {
15338 "description" : "Number of outgoing virus mails.",
15339 "type" : "number"
15340 }
15341 },
15342 "type" : "object"
d7cd791b
DM
15343 }
15344 }
15345 },
9fda36b0
DM
15346 "leaf" : 1,
15347 "path" : "/statistics/mail",
15348 "text" : "mail"
d7cd791b 15349 },
732d76e1
DM
15350 {
15351 "info" : {
15352 "GET" : {
6bd70b95 15353 "allowtoken" : 1,
732d76e1
DM
15354 "description" : "Mail Count Statistics.",
15355 "method" : "GET",
15356 "name" : "recent",
15357 "parameters" : {
15358 "additionalProperties" : 0,
15359 "properties" : {
15360 "hours" : {
15361 "default" : 12,
15362 "description" : "How many hours you want to get",
15363 "maximum" : 24,
15364 "minimum" : 1,
15365 "optional" : 1,
15366 "type" : "integer",
15367 "typetext" : "<integer> (1 - 24)"
15368 },
15369 "timespan" : {
15370 "default" : 1800,
15371 "description" : "The Timespan for one datapoint (in seconds)",
15372 "maximum" : 1800,
15373 "minimum" : 1,
15374 "optional" : 1,
15375 "type" : "integer",
15376 "typetext" : "<integer> (1 - 1800)"
15377 }
15378 }
15379 },
15380 "permissions" : {
15381 "check" : [
15382 "admin",
15383 "qmanager",
15384 "audit"
15385 ]
15386 },
15387 "returns" : {
15388 "items" : {
15389 "properties" : {
15390 "bytes_in" : {
15391 "description" : "Number of incoming bytes mails.",
15392 "type" : "number"
15393 },
15394 "bytes_out" : {
15395 "description" : "Number of outgoing bytes mails.",
15396 "type" : "number"
15397 },
15398 "count" : {
15399 "description" : "Overall mail count (in and out).",
15400 "type" : "number"
15401 },
15402 "count_in" : {
15403 "description" : "Incoming mail count.",
15404 "type" : "number"
15405 },
15406 "count_out" : {
15407 "description" : "Outgoing mail count.",
15408 "type" : "number"
15409 },
15410 "index" : {
15411 "description" : "Time index.",
15412 "type" : "integer"
15413 },
15414 "spam" : {
15415 "description" : "Overall spam mail count (in and out).",
15416 "type" : "number"
15417 },
15418 "spam_in" : {
15419 "description" : "Incoming spam mails (spamcount_in + glcount + spfcount).",
15420 "type" : "number"
15421 },
15422 "spam_out" : {
15423 "description" : "Outgoing spam mails.",
15424 "type" : "number"
15425 },
15426 "time" : {
15427 "description" : "Time (Unix epoch).",
15428 "type" : "integer"
15429 },
15430 "timespan" : {
15431 "description" : "Timespan in seconds for one data point",
15432 "type" : "number"
15433 },
15434 "virus_in" : {
15435 "description" : "Number of incoming virus mails.",
15436 "type" : "number"
15437 },
15438 "virus_out" : {
15439 "description" : "Number of outgoing virus mails.",
15440 "type" : "number"
15441 }
15442 },
15443 "type" : "object"
15444 },
15445 "type" : "array"
15446 }
15447 }
15448 },
15449 "leaf" : 1,
15450 "path" : "/statistics/recent",
15451 "text" : "recent"
15452 },
15453 {
15454 "info" : {
15455 "GET" : {
6bd70b95 15456 "allowtoken" : 1,
732d76e1
DM
15457 "description" : "Top recent Mail Receivers (including spam)",
15458 "method" : "GET",
15459 "name" : "recentreceivers",
15460 "parameters" : {
15461 "additionalProperties" : 0,
15462 "properties" : {
15463 "hours" : {
15464 "default" : 12,
15465 "description" : "How many hours you want to get",
15466 "maximum" : 24,
15467 "minimum" : 1,
15468 "optional" : 1,
15469 "type" : "integer",
15470 "typetext" : "<integer> (1 - 24)"
15471 },
15472 "limit" : {
15473 "default" : 5,
15474 "description" : "The maximum number of receivers to return.",
15475 "maximum" : 50,
15476 "minimum" : 1,
15477 "optional" : 1,
15478 "type" : "integer",
15479 "typetext" : "<integer> (1 - 50)"
15480 }
15481 }
15482 },
15483 "permissions" : {
15484 "check" : [
15485 "admin",
15486 "qmanager",
15487 "audit"
15488 ]
15489 },
15490 "returns" : {
15491 "items" : {
15492 "properties" : {
15493 "count" : {
15494 "description" : "The count of incoming not blocked E-Mails",
15495 "type" : "integer"
15496 },
15497 "receiver" : {
15498 "description" : "The receiver",
15499 "type" : "string"
15500 }
15501 },
15502 "type" : "object"
15503 },
15504 "type" : "array"
15505 }
15506 }
15507 },
15508 "leaf" : 1,
15509 "path" : "/statistics/recentreceivers",
15510 "text" : "recentreceivers"
15511 },
d7cd791b 15512 {
9fda36b0
DM
15513 "info" : {
15514 "GET" : {
6bd70b95 15515 "allowtoken" : 1,
9fda36b0
DM
15516 "description" : "Mail Count Statistics.",
15517 "method" : "GET",
15518 "name" : "mailcount",
15519 "parameters" : {
15520 "additionalProperties" : 0,
15521 "properties" : {
15522 "day" : {
15523 "description" : "Day of month. Get statistics for a single day.",
15524 "maximum" : 31,
15525 "minimum" : 1,
15526 "optional" : 1,
15527 "type" : "integer",
15528 "typetext" : "<integer> (1 - 31)"
d7cd791b 15529 },
9fda36b0
DM
15530 "endtime" : {
15531 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
15532 "minimum" : 1,
15533 "optional" : 1,
15534 "type" : "integer",
15535 "typetext" : "<integer> (1 - N)"
d7cd791b 15536 },
9fda36b0
DM
15537 "month" : {
15538 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
15539 "maximum" : 12,
15540 "minimum" : 1,
15541 "optional" : 1,
15542 "type" : "integer",
15543 "typetext" : "<integer> (1 - 12)"
15544 },
15545 "starttime" : {
15546 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
15547 "minimum" : 0,
15548 "optional" : 1,
15549 "type" : "integer",
15550 "typetext" : "<integer> (0 - N)"
15551 },
15552 "timespan" : {
15553 "default" : 3600,
15554 "description" : "Return Mails/<timespan>, where <timespan> is specified in seconds.",
15555 "maximum" : 31622400,
15556 "minimum" : 3600,
15557 "optional" : 1,
15558 "type" : "integer",
15559 "typetext" : "<integer> (3600 - 31622400)"
15560 },
15561 "year" : {
15562 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
15563 "maximum" : 3000,
15564 "minimum" : 1900,
15565 "optional" : 1,
15566 "type" : "integer",
15567 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
15568 }
15569 }
15570 },
9fda36b0
DM
15571 "permissions" : {
15572 "check" : [
15573 "admin",
15574 "qmanager",
15575 "audit"
15576 ]
15577 },
15578 "returns" : {
15579 "items" : {
15580 "properties" : {
15581 "bounces_in" : {
15582 "description" : "Incoming bounce mail count (sender = <>).",
15583 "type" : "number"
15584 },
15585 "bounces_out" : {
15586 "description" : "Outgoing bounce mail count (sender = <>).",
15587 "type" : "number"
15588 },
15589 "count" : {
15590 "description" : "Overall mail count (in and out).",
15591 "type" : "number"
15592 },
15593 "count_in" : {
15594 "description" : "Incoming mail count.",
15595 "type" : "number"
15596 },
15597 "count_out" : {
15598 "description" : "Outgoing mail count.",
15599 "type" : "number"
15600 },
15601 "index" : {
15602 "description" : "Time index.",
15603 "type" : "integer"
15604 },
274b47fc
DM
15605 "pregreet_rejects" : {
15606 "description" : "PREGREET recject count.",
15607 "type" : "integer"
15608 },
15609 "rbl_rejects" : {
15610 "description" : "Number of RBL rejects.",
15611 "type" : "integer"
15612 },
9fda36b0 15613 "spamcount_in" : {
274b47fc 15614 "description" : "Incoming spam mails (spamcount_in + glcount + spfcount + rbl_rejects + pregreet_rejects).",
9fda36b0
DM
15615 "type" : "number"
15616 },
15617 "spamcount_out" : {
15618 "description" : "Outgoing spam mails.",
15619 "type" : "number"
15620 },
15621 "time" : {
15622 "description" : "Time (Unix epoch).",
15623 "type" : "integer"
15624 },
15625 "viruscount_in" : {
15626 "description" : "Number of incoming virus mails.",
15627 "type" : "number"
15628 },
15629 "viruscount_out" : {
15630 "description" : "Number of outgoing virus mails.",
15631 "type" : "number"
15632 }
15633 },
15634 "type" : "object"
15635 },
15636 "type" : "array"
15637 }
d7cd791b 15638 }
9fda36b0
DM
15639 },
15640 "leaf" : 1,
15641 "path" : "/statistics/mailcount",
15642 "text" : "mailcount"
15643 },
15644 {
d7cd791b
DM
15645 "info" : {
15646 "GET" : {
6bd70b95 15647 "allowtoken" : 1,
9fda36b0 15648 "description" : "Get Statistics about detected Viruses.",
d7cd791b 15649 "method" : "GET",
9fda36b0 15650 "name" : "virus",
d7cd791b
DM
15651 "parameters" : {
15652 "additionalProperties" : 0,
15653 "properties" : {
9fda36b0
DM
15654 "day" : {
15655 "description" : "Day of month. Get statistics for a single day.",
15656 "maximum" : 31,
15657 "minimum" : 1,
15658 "optional" : 1,
15659 "type" : "integer",
15660 "typetext" : "<integer> (1 - 31)"
15661 },
d7cd791b 15662 "endtime" : {
9fda36b0 15663 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
d7cd791b
DM
15664 "minimum" : 1,
15665 "optional" : 1,
15666 "type" : "integer",
15667 "typetext" : "<integer> (1 - N)"
15668 },
9fda36b0
DM
15669 "month" : {
15670 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
15671 "maximum" : 12,
15672 "minimum" : 1,
d7cd791b 15673 "optional" : 1,
9fda36b0
DM
15674 "type" : "integer",
15675 "typetext" : "<integer> (1 - 12)"
d7cd791b
DM
15676 },
15677 "starttime" : {
9fda36b0 15678 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
d7cd791b
DM
15679 "minimum" : 0,
15680 "optional" : 1,
15681 "type" : "integer",
15682 "typetext" : "<integer> (0 - N)"
9fda36b0
DM
15683 },
15684 "year" : {
15685 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
15686 "maximum" : 3000,
15687 "minimum" : 1900,
15688 "optional" : 1,
15689 "type" : "integer",
15690 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
15691 }
15692 }
15693 },
15694 "permissions" : {
15695 "check" : [
15696 "admin",
15697 "qmanager",
9fda36b0 15698 "audit"
d7cd791b
DM
15699 ]
15700 },
15701 "returns" : {
15702 "items" : {
15703 "properties" : {
15704 "count" : {
9fda36b0 15705 "description" : "Detection count.",
d7cd791b
DM
15706 "type" : "integer"
15707 },
9fda36b0
DM
15708 "name" : {
15709 "description" : "Virus name.",
15710 "type" : "string"
d7cd791b
DM
15711 }
15712 },
15713 "type" : "object"
15714 },
d7cd791b
DM
15715 "type" : "array"
15716 }
15717 }
15718 },
9fda36b0
DM
15719 "leaf" : 1,
15720 "path" : "/statistics/virus",
15721 "text" : "virus"
d7cd791b
DM
15722 },
15723 {
15724 "info" : {
15725 "GET" : {
6bd70b95 15726 "allowtoken" : 1,
9fda36b0 15727 "description" : "Get the count of spam mails grouped by spam score. Count for score 10 includes mails with spam score > 10.",
d7cd791b 15728 "method" : "GET",
9fda36b0 15729 "name" : "spamscores",
d7cd791b
DM
15730 "parameters" : {
15731 "additionalProperties" : 0,
15732 "properties" : {
9fda36b0
DM
15733 "day" : {
15734 "description" : "Day of month. Get statistics for a single day.",
15735 "maximum" : 31,
15736 "minimum" : 1,
15737 "optional" : 1,
15738 "type" : "integer",
15739 "typetext" : "<integer> (1 - 31)"
d7cd791b 15740 },
9fda36b0
DM
15741 "endtime" : {
15742 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
15743 "minimum" : 1,
d7cd791b 15744 "optional" : 1,
9fda36b0
DM
15745 "type" : "integer",
15746 "typetext" : "<integer> (1 - N)"
15747 },
15748 "month" : {
15749 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
15750 "maximum" : 12,
15751 "minimum" : 1,
15752 "optional" : 1,
15753 "type" : "integer",
15754 "typetext" : "<integer> (1 - 12)"
15755 },
15756 "starttime" : {
15757 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
15758 "minimum" : 0,
15759 "optional" : 1,
15760 "type" : "integer",
15761 "typetext" : "<integer> (0 - N)"
15762 },
15763 "year" : {
15764 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
15765 "maximum" : 3000,
15766 "minimum" : 1900,
15767 "optional" : 1,
15768 "type" : "integer",
15769 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
15770 }
15771 }
15772 },
15773 "permissions" : {
15774 "check" : [
15775 "admin",
15776 "qmanager",
9fda36b0 15777 "audit"
d7cd791b
DM
15778 ]
15779 },
15780 "returns" : {
9fda36b0
DM
15781 "items" : {
15782 "properties" : {
15783 "count" : {
15784 "description" : "Detection count.",
15785 "type" : "integer"
15786 },
15787 "level" : {
15788 "description" : "Spam level.",
15789 "type" : "string"
15790 },
15791 "ratio" : {
15792 "description" : "Portion of overall mail count.",
15793 "type" : "number"
15794 }
d7cd791b 15795 },
9fda36b0
DM
15796 "type" : "object"
15797 },
15798 "type" : "array"
15799 }
15800 }
15801 },
15802 "leaf" : 1,
15803 "path" : "/statistics/spamscores",
15804 "text" : "spamscores"
15805 },
15806 {
15807 "info" : {
15808 "GET" : {
6bd70b95 15809 "allowtoken" : 1,
9fda36b0
DM
15810 "description" : "Get the count of spam mails grouped by spam score. Count for score 10 includes mails with spam score > 10.",
15811 "method" : "GET",
15812 "name" : "maildistribution",
15813 "parameters" : {
15814 "additionalProperties" : 0,
15815 "properties" : {
15816 "day" : {
15817 "description" : "Day of month. Get statistics for a single day.",
15818 "maximum" : 31,
15819 "minimum" : 1,
d7cd791b 15820 "optional" : 1,
9fda36b0
DM
15821 "type" : "integer",
15822 "typetext" : "<integer> (1 - 31)"
d7cd791b 15823 },
9fda36b0
DM
15824 "endtime" : {
15825 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
15826 "minimum" : 1,
15827 "optional" : 1,
15828 "type" : "integer",
15829 "typetext" : "<integer> (1 - N)"
d7cd791b 15830 },
9fda36b0
DM
15831 "month" : {
15832 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
15833 "maximum" : 12,
15834 "minimum" : 1,
15835 "optional" : 1,
15836 "type" : "integer",
15837 "typetext" : "<integer> (1 - 12)"
d7cd791b 15838 },
9fda36b0
DM
15839 "starttime" : {
15840 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
15841 "minimum" : 0,
15842 "optional" : 1,
15843 "type" : "integer",
15844 "typetext" : "<integer> (0 - N)"
d7cd791b 15845 },
9fda36b0
DM
15846 "year" : {
15847 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
15848 "maximum" : 3000,
15849 "minimum" : 1900,
15850 "optional" : 1,
15851 "type" : "integer",
15852 "typetext" : "<integer> (1900 - 3000)"
d7cd791b 15853 }
9fda36b0
DM
15854 }
15855 },
15856 "permissions" : {
15857 "check" : [
15858 "admin",
15859 "qmanager",
15860 "audit"
15861 ]
15862 },
15863 "returns" : {
15864 "items" : {
15865 "properties" : {
15866 "bounces_in" : {
15867 "description" : "Incoming bounce mail count (sender = <>).",
15868 "type" : "number"
15869 },
15870 "bounces_out" : {
15871 "description" : "Outgoing bounce mail count (sender = <>).",
15872 "type" : "number"
15873 },
15874 "count" : {
15875 "description" : "Overall mail count (in and out).",
15876 "type" : "number"
15877 },
15878 "count_in" : {
15879 "description" : "Incoming mail count.",
15880 "type" : "number"
15881 },
15882 "count_out" : {
15883 "description" : "Outgoing mail count.",
15884 "type" : "number"
15885 },
15886 "index" : {
15887 "description" : "Hour (0-23).",
15888 "type" : "integer"
15889 },
15890 "spamcount_in" : {
15891 "description" : "Incoming spam mails (spamcount_in + glcount + spfcount).",
15892 "type" : "number"
15893 },
15894 "spamcount_out" : {
15895 "description" : "Outgoing spam mails.",
15896 "type" : "number"
15897 },
15898 "viruscount_in" : {
15899 "description" : "Number of incoming virus mails.",
15900 "type" : "number"
15901 },
15902 "viruscount_out" : {
15903 "description" : "Number of outgoing virus mails.",
15904 "type" : "number"
15905 }
15906 },
15907 "type" : "object"
d7cd791b 15908 },
9fda36b0 15909 "type" : "array"
d7cd791b 15910 }
9fda36b0
DM
15911 }
15912 },
15913 "leaf" : 1,
15914 "path" : "/statistics/maildistribution",
15915 "text" : "maildistribution"
15916 },
15917 {
15918 "info" : {
15919 "GET" : {
6bd70b95 15920 "allowtoken" : 1,
274b47fc 15921 "description" : "Early SMTP reject count statistic (RBL, PREGREET rejects with postscreen)",
9fda36b0 15922 "method" : "GET",
274b47fc 15923 "name" : "rejectcount",
d7cd791b
DM
15924 "parameters" : {
15925 "additionalProperties" : 0,
15926 "properties" : {
9fda36b0
DM
15927 "day" : {
15928 "description" : "Day of month. Get statistics for a single day.",
15929 "maximum" : 31,
15930 "minimum" : 1,
15931 "optional" : 1,
15932 "type" : "integer",
15933 "typetext" : "<integer> (1 - 31)"
d7cd791b 15934 },
9fda36b0
DM
15935 "endtime" : {
15936 "description" : "Only consider entries older than 'endtime' (unix epoch). This is set to '<start> + 1day' by default.",
15937 "minimum" : 1,
15938 "optional" : 1,
15939 "type" : "integer",
15940 "typetext" : "<integer> (1 - N)"
15941 },
15942 "month" : {
15943 "description" : "Month. You will get statistics for the whole month if you do not specify a day.",
15944 "maximum" : 12,
15945 "minimum" : 1,
15946 "optional" : 1,
15947 "type" : "integer",
15948 "typetext" : "<integer> (1 - 12)"
15949 },
15950 "starttime" : {
15951 "description" : "Only consider entries newer than 'starttime' (unix epoch). Default is 'now - 1day'.",
15952 "minimum" : 0,
15953 "optional" : 1,
15954 "type" : "integer",
15955 "typetext" : "<integer> (0 - N)"
15956 },
15957 "timespan" : {
15958 "default" : 3600,
274b47fc 15959 "description" : "Return RBL/PREGREET rejects/<timespan>, where <timespan> is specified in seconds.",
9fda36b0
DM
15960 "maximum" : 31622400,
15961 "minimum" : 3600,
15962 "optional" : 1,
15963 "type" : "integer",
15964 "typetext" : "<integer> (3600 - 31622400)"
15965 },
15966 "year" : {
15967 "description" : "Year. Defaults to current year. You will get statistics for the whole year if you do not specify a month or day.",
15968 "maximum" : 3000,
15969 "minimum" : 1900,
15970 "optional" : 1,
15971 "type" : "integer",
15972 "typetext" : "<integer> (1900 - 3000)"
d7cd791b
DM
15973 }
15974 }
15975 },
15976 "permissions" : {
15977 "check" : [
15978 "admin",
15979 "qmanager",
9fda36b0 15980 "audit"
d7cd791b
DM
15981 ]
15982 },
d7cd791b 15983 "returns" : {
9fda36b0
DM
15984 "items" : {
15985 "properties" : {
9fda36b0
DM
15986 "index" : {
15987 "description" : "Time index.",
15988 "type" : "integer"
15989 },
274b47fc
DM
15990 "pregreet_rejects" : {
15991 "description" : "PREGREET recject count.",
15992 "type" : "integer"
15993 },
15994 "rbl_rejects" : {
15995 "description" : "RBL recject count.",
15996 "type" : "integer"
15997 },
9fda36b0
DM
15998 "time" : {
15999 "description" : "Time (Unix epoch).",
16000 "type" : "integer"
16001 }
16002 },
16003 "type" : "object"
16004 },
16005 "type" : "array"
d7cd791b
DM
16006 }
16007 }
16008 },
16009 "leaf" : 1,
274b47fc
DM
16010 "path" : "/statistics/rejectcount",
16011 "text" : "rejectcount"
d7cd791b
DM
16012 }
16013 ],
16014 "info" : {
16015 "GET" : {
6bd70b95 16016 "allowtoken" : 1,
d7cd791b
DM
16017 "description" : "Directory index.",
16018 "method" : "GET",
16019 "name" : "index",
16020 "parameters" : {
16021 "additionalProperties" : 0
16022 },
16023 "permissions" : {
9fda36b0
DM
16024 "check" : [
16025 "admin",
16026 "qmanager",
16027 "audit"
16028 ]
d7cd791b
DM
16029 },
16030 "returns" : {
16031 "items" : {
16032 "properties" : {},
16033 "type" : "object"
16034 },
16035 "links" : [
16036 {
16037 "href" : "{name}",
16038 "rel" : "child"
16039 }
16040 ],
16041 "type" : "array"
16042 }
16043 }
16044 },
16045 "leaf" : 0,
9fda36b0
DM
16046 "path" : "/statistics",
16047 "text" : "statistics"
d7cd791b 16048 },
410dc2c9
DM
16049 {
16050 "info" : {
16051 "GET" : {
6bd70b95 16052 "allowtoken" : 1,
410dc2c9
DM
16053 "description" : "API version details.",
16054 "method" : "GET",
16055 "name" : "version",
16056 "parameters" : {
16057 "additionalProperties" : 0
16058 },
16059 "permissions" : {
16060 "user" : "all"
16061 },
16062 "returns" : {
16063 "properties" : {
16064 "release" : {
241ac83c 16065 "description" : "The current installed Proxmox Mailgateway Release",
410dc2c9
DM
16066 "type" : "string"
16067 },
16068 "repoid" : {
241ac83c 16069 "description" : "The short git commit hash ID from which this version was build",
410dc2c9
DM
16070 "type" : "string"
16071 },
16072 "version" : {
241ac83c 16073 "description" : "The current installed pmg-api package version",
410dc2c9
DM
16074 "type" : "string"
16075 }
16076 },
16077 "type" : "object"
16078 }
16079 }
16080 },
16081 "leaf" : 1,
16082 "path" : "/version",
16083 "text" : "version"
16084 }
16085]
16086;
16087