Fix exception messages and lint error
[osm/N2VC.git] / juju / client / schemas-20160608.json
1 [
2   {
3     "Name": "Action",
4     "Version": 2,
5     "Schema": {
6       "type": "object",
7       "properties": {
8         "Actions": {
9           "type": "object",
10           "properties": {
11             "Params": {
12               "$ref": "#/definitions/Entities"
13             },
14             "Result": {
15               "$ref": "#/definitions/ActionResults"
16             }
17           }
18         },
19         "ApplicationsCharmsActions": {
20           "type": "object",
21           "properties": {
22             "Params": {
23               "$ref": "#/definitions/Entities"
24             },
25             "Result": {
26               "$ref": "#/definitions/ApplicationsCharmActionsResults"
27             }
28           }
29         },
30         "Cancel": {
31           "type": "object",
32           "properties": {
33             "Params": {
34               "$ref": "#/definitions/Entities"
35             },
36             "Result": {
37               "$ref": "#/definitions/ActionResults"
38             }
39           }
40         },
41         "Enqueue": {
42           "type": "object",
43           "properties": {
44             "Params": {
45               "$ref": "#/definitions/Actions"
46             },
47             "Result": {
48               "$ref": "#/definitions/ActionResults"
49             }
50           }
51         },
52         "FindActionTagsByPrefix": {
53           "type": "object",
54           "properties": {
55             "Params": {
56               "$ref": "#/definitions/FindTags"
57             },
58             "Result": {
59               "$ref": "#/definitions/FindTagsResults"
60             }
61           }
62         },
63         "FindActionsByNames": {
64           "type": "object",
65           "properties": {
66             "Params": {
67               "$ref": "#/definitions/FindActionsByNames"
68             },
69             "Result": {
70               "$ref": "#/definitions/ActionsByNames"
71             }
72           }
73         },
74         "ListAll": {
75           "type": "object",
76           "properties": {
77             "Params": {
78               "$ref": "#/definitions/Entities"
79             },
80             "Result": {
81               "$ref": "#/definitions/ActionsByReceivers"
82             }
83           }
84         },
85         "ListCompleted": {
86           "type": "object",
87           "properties": {
88             "Params": {
89               "$ref": "#/definitions/Entities"
90             },
91             "Result": {
92               "$ref": "#/definitions/ActionsByReceivers"
93             }
94           }
95         },
96         "ListPending": {
97           "type": "object",
98           "properties": {
99             "Params": {
100               "$ref": "#/definitions/Entities"
101             },
102             "Result": {
103               "$ref": "#/definitions/ActionsByReceivers"
104             }
105           }
106         },
107         "ListRunning": {
108           "type": "object",
109           "properties": {
110             "Params": {
111               "$ref": "#/definitions/Entities"
112             },
113             "Result": {
114               "$ref": "#/definitions/ActionsByReceivers"
115             }
116           }
117         },
118         "Run": {
119           "type": "object",
120           "properties": {
121             "Params": {
122               "$ref": "#/definitions/RunParams"
123             },
124             "Result": {
125               "$ref": "#/definitions/ActionResults"
126             }
127           }
128         },
129         "RunOnAllMachines": {
130           "type": "object",
131           "properties": {
132             "Params": {
133               "$ref": "#/definitions/RunParams"
134             },
135             "Result": {
136               "$ref": "#/definitions/ActionResults"
137             }
138           }
139         }
140       },
141       "definitions": {
142         "Action": {
143           "type": "object",
144           "properties": {
145             "name": {
146               "type": "string"
147             },
148             "parameters": {
149               "type": "object",
150               "patternProperties": {
151                 ".*": {
152                   "type": "object",
153                   "additionalProperties": true
154                 }
155               }
156             },
157             "receiver": {
158               "type": "string"
159             },
160             "tag": {
161               "type": "string"
162             }
163           },
164           "additionalProperties": false,
165           "required": [
166             "tag",
167             "receiver",
168             "name"
169           ]
170         },
171         "ActionResult": {
172           "type": "object",
173           "properties": {
174             "action": {
175               "$ref": "#/definitions/Action"
176             },
177             "completed": {
178               "type": "string",
179               "format": "date-time"
180             },
181             "enqueued": {
182               "type": "string",
183               "format": "date-time"
184             },
185             "error": {
186               "$ref": "#/definitions/Error"
187             },
188             "message": {
189               "type": "string"
190             },
191             "output": {
192               "type": "object",
193               "patternProperties": {
194                 ".*": {
195                   "type": "object",
196                   "additionalProperties": true
197                 }
198               }
199             },
200             "started": {
201               "type": "string",
202               "format": "date-time"
203             },
204             "status": {
205               "type": "string"
206             }
207           },
208           "additionalProperties": false
209         },
210         "ActionResults": {
211           "type": "object",
212           "properties": {
213             "results": {
214               "type": "array",
215               "items": {
216                 "$ref": "#/definitions/ActionResult"
217               }
218             }
219           },
220           "additionalProperties": false
221         },
222         "ActionSpec": {
223           "type": "object",
224           "properties": {
225             "Description": {
226               "type": "string"
227             },
228             "Params": {
229               "type": "object",
230               "patternProperties": {
231                 ".*": {
232                   "type": "object",
233                   "additionalProperties": true
234                 }
235               }
236             }
237           },
238           "additionalProperties": false,
239           "required": [
240             "Description",
241             "Params"
242           ]
243         },
244         "Actions": {
245           "type": "object",
246           "properties": {
247             "ActionSpecs": {
248               "type": "object",
249               "patternProperties": {
250                 ".*": {
251                   "$ref": "#/definitions/ActionSpec"
252                 }
253               }
254             }
255           },
256           "additionalProperties": false,
257           "required": [
258             "ActionSpecs"
259           ]
260         },
261         "ActionsByName": {
262           "type": "object",
263           "properties": {
264             "actions": {
265               "type": "array",
266               "items": {
267                 "$ref": "#/definitions/ActionResult"
268               }
269             },
270             "error": {
271               "$ref": "#/definitions/Error"
272             },
273             "name": {
274               "type": "string"
275             }
276           },
277           "additionalProperties": false
278         },
279         "ActionsByNames": {
280           "type": "object",
281           "properties": {
282             "actions": {
283               "type": "array",
284               "items": {
285                 "$ref": "#/definitions/ActionsByName"
286               }
287             }
288           },
289           "additionalProperties": false
290         },
291         "ActionsByReceiver": {
292           "type": "object",
293           "properties": {
294             "actions": {
295               "type": "array",
296               "items": {
297                 "$ref": "#/definitions/ActionResult"
298               }
299             },
300             "error": {
301               "$ref": "#/definitions/Error"
302             },
303             "receiver": {
304               "type": "string"
305             }
306           },
307           "additionalProperties": false
308         },
309         "ActionsByReceivers": {
310           "type": "object",
311           "properties": {
312             "actions": {
313               "type": "array",
314               "items": {
315                 "$ref": "#/definitions/ActionsByReceiver"
316               }
317             }
318           },
319           "additionalProperties": false
320         },
321         "ApplicationCharmActionsResult": {
322           "type": "object",
323           "properties": {
324             "ApplicationTag": {
325               "type": "string"
326             },
327             "actions": {
328               "$ref": "#/definitions/Actions"
329             },
330             "error": {
331               "$ref": "#/definitions/Error"
332             }
333           },
334           "additionalProperties": false
335         },
336         "ApplicationsCharmActionsResults": {
337           "type": "object",
338           "properties": {
339             "results": {
340               "type": "array",
341               "items": {
342                 "$ref": "#/definitions/ApplicationCharmActionsResult"
343               }
344             }
345           },
346           "additionalProperties": false
347         },
348         "Entities": {
349           "type": "object",
350           "properties": {
351             "Entities": {
352               "type": "array",
353               "items": {
354                 "$ref": "#/definitions/Entity"
355               }
356             }
357           },
358           "additionalProperties": false,
359           "required": [
360             "Entities"
361           ]
362         },
363         "Entity": {
364           "type": "object",
365           "properties": {
366             "Tag": {
367               "type": "string"
368             }
369           },
370           "additionalProperties": false,
371           "required": [
372             "Tag"
373           ]
374         },
375         "Error": {
376           "type": "object",
377           "properties": {
378             "Code": {
379               "type": "string"
380             },
381             "Info": {
382               "$ref": "#/definitions/ErrorInfo"
383             },
384             "Message": {
385               "type": "string"
386             }
387           },
388           "additionalProperties": false,
389           "required": [
390             "Message",
391             "Code"
392           ]
393         },
394         "ErrorInfo": {
395           "type": "object",
396           "properties": {
397             "Macaroon": {
398               "$ref": "#/definitions/Macaroon"
399             },
400             "MacaroonPath": {
401               "type": "string"
402             }
403           },
404           "additionalProperties": false
405         },
406         "FindActionsByNames": {
407           "type": "object",
408           "properties": {
409             "names": {
410               "type": "array",
411               "items": {
412                 "type": "string"
413               }
414             }
415           },
416           "additionalProperties": false
417         },
418         "FindTags": {
419           "type": "object",
420           "properties": {
421             "prefixes": {
422               "type": "array",
423               "items": {
424                 "type": "string"
425               }
426             }
427           },
428           "additionalProperties": false,
429           "required": [
430             "prefixes"
431           ]
432         },
433         "FindTagsResults": {
434           "type": "object",
435           "properties": {
436             "matches": {
437               "type": "object",
438               "patternProperties": {
439                 ".*": {
440                   "type": "array",
441                   "items": {
442                     "$ref": "#/definitions/Entity"
443                   }
444                 }
445               }
446             }
447           },
448           "additionalProperties": false,
449           "required": [
450             "matches"
451           ]
452         },
453         "Macaroon": {
454           "type": "object",
455           "properties": {
456             "caveats": {
457               "type": "array",
458               "items": {
459                 "$ref": "#/definitions/caveat"
460               }
461             },
462             "data": {
463               "type": "array",
464               "items": {
465                 "type": "integer"
466               }
467             },
468             "id": {
469               "$ref": "#/definitions/packet"
470             },
471             "location": {
472               "$ref": "#/definitions/packet"
473             },
474             "sig": {
475               "type": "array",
476               "items": {
477                 "type": "integer"
478               }
479             }
480           },
481           "additionalProperties": false,
482           "required": [
483             "data",
484             "location",
485             "id",
486             "caveats",
487             "sig"
488           ]
489         },
490         "RunParams": {
491           "type": "object",
492           "properties": {
493             "Applications": {
494               "type": "array",
495               "items": {
496                 "type": "string"
497               }
498             },
499             "Commands": {
500               "type": "string"
501             },
502             "Machines": {
503               "type": "array",
504               "items": {
505                 "type": "string"
506               }
507             },
508             "Timeout": {
509               "type": "integer"
510             },
511             "Units": {
512               "type": "array",
513               "items": {
514                 "type": "string"
515               }
516             }
517           },
518           "additionalProperties": false,
519           "required": [
520             "Commands",
521             "Timeout",
522             "Machines",
523             "Applications",
524             "Units"
525           ]
526         },
527         "caveat": {
528           "type": "object",
529           "properties": {
530             "caveatId": {
531               "$ref": "#/definitions/packet"
532             },
533             "location": {
534               "$ref": "#/definitions/packet"
535             },
536             "verificationId": {
537               "$ref": "#/definitions/packet"
538             }
539           },
540           "additionalProperties": false,
541           "required": [
542             "location",
543             "caveatId",
544             "verificationId"
545           ]
546         },
547         "packet": {
548           "type": "object",
549           "properties": {
550             "headerLen": {
551               "type": "integer"
552             },
553             "start": {
554               "type": "integer"
555             },
556             "totalLen": {
557               "type": "integer"
558             }
559           },
560           "additionalProperties": false,
561           "required": [
562             "start",
563             "totalLen",
564             "headerLen"
565           ]
566         }
567       }
568     }
569   },
570   {
571     "Name": "Addresser",
572     "Version": 2,
573     "Schema": {
574       "type": "object",
575       "properties": {
576         "CanDeallocateAddresses": {
577           "type": "object",
578           "properties": {
579             "Result": {
580               "$ref": "#/definitions/BoolResult"
581             }
582           }
583         },
584         "CleanupIPAddresses": {
585           "type": "object",
586           "properties": {
587             "Result": {
588               "$ref": "#/definitions/ErrorResult"
589             }
590           }
591         },
592         "WatchIPAddresses": {
593           "type": "object",
594           "properties": {
595             "Result": {
596               "$ref": "#/definitions/EntitiesWatchResult"
597             }
598           }
599         }
600       },
601       "definitions": {
602         "BoolResult": {
603           "type": "object",
604           "properties": {
605             "Error": {
606               "$ref": "#/definitions/Error"
607             },
608             "Result": {
609               "type": "boolean"
610             }
611           },
612           "additionalProperties": false,
613           "required": [
614             "Error",
615             "Result"
616           ]
617         },
618         "EntitiesWatchResult": {
619           "type": "object",
620           "properties": {
621             "Changes": {
622               "type": "array",
623               "items": {
624                 "type": "string"
625               }
626             },
627             "EntityWatcherId": {
628               "type": "string"
629             },
630             "Error": {
631               "$ref": "#/definitions/Error"
632             }
633           },
634           "additionalProperties": false,
635           "required": [
636             "EntityWatcherId",
637             "Changes",
638             "Error"
639           ]
640         },
641         "Error": {
642           "type": "object",
643           "properties": {
644             "Code": {
645               "type": "string"
646             },
647             "Info": {
648               "$ref": "#/definitions/ErrorInfo"
649             },
650             "Message": {
651               "type": "string"
652             }
653           },
654           "additionalProperties": false,
655           "required": [
656             "Message",
657             "Code"
658           ]
659         },
660         "ErrorInfo": {
661           "type": "object",
662           "properties": {
663             "Macaroon": {
664               "$ref": "#/definitions/Macaroon"
665             },
666             "MacaroonPath": {
667               "type": "string"
668             }
669           },
670           "additionalProperties": false
671         },
672         "ErrorResult": {
673           "type": "object",
674           "properties": {
675             "Error": {
676               "$ref": "#/definitions/Error"
677             }
678           },
679           "additionalProperties": false,
680           "required": [
681             "Error"
682           ]
683         },
684         "Macaroon": {
685           "type": "object",
686           "properties": {
687             "caveats": {
688               "type": "array",
689               "items": {
690                 "$ref": "#/definitions/caveat"
691               }
692             },
693             "data": {
694               "type": "array",
695               "items": {
696                 "type": "integer"
697               }
698             },
699             "id": {
700               "$ref": "#/definitions/packet"
701             },
702             "location": {
703               "$ref": "#/definitions/packet"
704             },
705             "sig": {
706               "type": "array",
707               "items": {
708                 "type": "integer"
709               }
710             }
711           },
712           "additionalProperties": false,
713           "required": [
714             "data",
715             "location",
716             "id",
717             "caveats",
718             "sig"
719           ]
720         },
721         "caveat": {
722           "type": "object",
723           "properties": {
724             "caveatId": {
725               "$ref": "#/definitions/packet"
726             },
727             "location": {
728               "$ref": "#/definitions/packet"
729             },
730             "verificationId": {
731               "$ref": "#/definitions/packet"
732             }
733           },
734           "additionalProperties": false,
735           "required": [
736             "location",
737             "caveatId",
738             "verificationId"
739           ]
740         },
741         "packet": {
742           "type": "object",
743           "properties": {
744             "headerLen": {
745               "type": "integer"
746             },
747             "start": {
748               "type": "integer"
749             },
750             "totalLen": {
751               "type": "integer"
752             }
753           },
754           "additionalProperties": false,
755           "required": [
756             "start",
757             "totalLen",
758             "headerLen"
759           ]
760         }
761       }
762     }
763   },
764   {
765     "Name": "Agent",
766     "Version": 2,
767     "Schema": {
768       "type": "object",
769       "properties": {
770         "ClearReboot": {
771           "type": "object",
772           "properties": {
773             "Params": {
774               "$ref": "#/definitions/Entities"
775             },
776             "Result": {
777               "$ref": "#/definitions/ErrorResults"
778             }
779           }
780         },
781         "GetEntities": {
782           "type": "object",
783           "properties": {
784             "Params": {
785               "$ref": "#/definitions/Entities"
786             },
787             "Result": {
788               "$ref": "#/definitions/AgentGetEntitiesResults"
789             }
790           }
791         },
792         "IsMaster": {
793           "type": "object",
794           "properties": {
795             "Result": {
796               "$ref": "#/definitions/IsMasterResult"
797             }
798           }
799         },
800         "ModelConfig": {
801           "type": "object",
802           "properties": {
803             "Result": {
804               "$ref": "#/definitions/ModelConfigResult"
805             }
806           }
807         },
808         "SetPasswords": {
809           "type": "object",
810           "properties": {
811             "Params": {
812               "$ref": "#/definitions/EntityPasswords"
813             },
814             "Result": {
815               "$ref": "#/definitions/ErrorResults"
816             }
817           }
818         },
819         "StateServingInfo": {
820           "type": "object",
821           "properties": {
822             "Result": {
823               "$ref": "#/definitions/StateServingInfo"
824             }
825           }
826         },
827         "WatchForModelConfigChanges": {
828           "type": "object",
829           "properties": {
830             "Result": {
831               "$ref": "#/definitions/NotifyWatchResult"
832             }
833           }
834         }
835       },
836       "definitions": {
837         "AgentGetEntitiesResult": {
838           "type": "object",
839           "properties": {
840             "ContainerType": {
841               "type": "string"
842             },
843             "Error": {
844               "$ref": "#/definitions/Error"
845             },
846             "Jobs": {
847               "type": "array",
848               "items": {
849                 "type": "string"
850               }
851             },
852             "Life": {
853               "type": "string"
854             }
855           },
856           "additionalProperties": false,
857           "required": [
858             "Life",
859             "Jobs",
860             "ContainerType",
861             "Error"
862           ]
863         },
864         "AgentGetEntitiesResults": {
865           "type": "object",
866           "properties": {
867             "Entities": {
868               "type": "array",
869               "items": {
870                 "$ref": "#/definitions/AgentGetEntitiesResult"
871               }
872             }
873           },
874           "additionalProperties": false,
875           "required": [
876             "Entities"
877           ]
878         },
879         "Entities": {
880           "type": "object",
881           "properties": {
882             "Entities": {
883               "type": "array",
884               "items": {
885                 "$ref": "#/definitions/Entity"
886               }
887             }
888           },
889           "additionalProperties": false,
890           "required": [
891             "Entities"
892           ]
893         },
894         "Entity": {
895           "type": "object",
896           "properties": {
897             "Tag": {
898               "type": "string"
899             }
900           },
901           "additionalProperties": false,
902           "required": [
903             "Tag"
904           ]
905         },
906         "EntityPassword": {
907           "type": "object",
908           "properties": {
909             "Password": {
910               "type": "string"
911             },
912             "Tag": {
913               "type": "string"
914             }
915           },
916           "additionalProperties": false,
917           "required": [
918             "Tag",
919             "Password"
920           ]
921         },
922         "EntityPasswords": {
923           "type": "object",
924           "properties": {
925             "Changes": {
926               "type": "array",
927               "items": {
928                 "$ref": "#/definitions/EntityPassword"
929               }
930             }
931           },
932           "additionalProperties": false,
933           "required": [
934             "Changes"
935           ]
936         },
937         "Error": {
938           "type": "object",
939           "properties": {
940             "Code": {
941               "type": "string"
942             },
943             "Info": {
944               "$ref": "#/definitions/ErrorInfo"
945             },
946             "Message": {
947               "type": "string"
948             }
949           },
950           "additionalProperties": false,
951           "required": [
952             "Message",
953             "Code"
954           ]
955         },
956         "ErrorInfo": {
957           "type": "object",
958           "properties": {
959             "Macaroon": {
960               "$ref": "#/definitions/Macaroon"
961             },
962             "MacaroonPath": {
963               "type": "string"
964             }
965           },
966           "additionalProperties": false
967         },
968         "ErrorResult": {
969           "type": "object",
970           "properties": {
971             "Error": {
972               "$ref": "#/definitions/Error"
973             }
974           },
975           "additionalProperties": false,
976           "required": [
977             "Error"
978           ]
979         },
980         "ErrorResults": {
981           "type": "object",
982           "properties": {
983             "Results": {
984               "type": "array",
985               "items": {
986                 "$ref": "#/definitions/ErrorResult"
987               }
988             }
989           },
990           "additionalProperties": false,
991           "required": [
992             "Results"
993           ]
994         },
995         "IsMasterResult": {
996           "type": "object",
997           "properties": {
998             "Master": {
999               "type": "boolean"
1000             }
1001           },
1002           "additionalProperties": false,
1003           "required": [
1004             "Master"
1005           ]
1006         },
1007         "Macaroon": {
1008           "type": "object",
1009           "properties": {
1010             "caveats": {
1011               "type": "array",
1012               "items": {
1013                 "$ref": "#/definitions/caveat"
1014               }
1015             },
1016             "data": {
1017               "type": "array",
1018               "items": {
1019                 "type": "integer"
1020               }
1021             },
1022             "id": {
1023               "$ref": "#/definitions/packet"
1024             },
1025             "location": {
1026               "$ref": "#/definitions/packet"
1027             },
1028             "sig": {
1029               "type": "array",
1030               "items": {
1031                 "type": "integer"
1032               }
1033             }
1034           },
1035           "additionalProperties": false,
1036           "required": [
1037             "data",
1038             "location",
1039             "id",
1040             "caveats",
1041             "sig"
1042           ]
1043         },
1044         "ModelConfigResult": {
1045           "type": "object",
1046           "properties": {
1047             "Config": {
1048               "type": "object",
1049               "patternProperties": {
1050                 ".*": {
1051                   "type": "object",
1052                   "additionalProperties": true
1053                 }
1054               }
1055             }
1056           },
1057           "additionalProperties": false,
1058           "required": [
1059             "Config"
1060           ]
1061         },
1062         "NotifyWatchResult": {
1063           "type": "object",
1064           "properties": {
1065             "Error": {
1066               "$ref": "#/definitions/Error"
1067             },
1068             "NotifyWatcherId": {
1069               "type": "string"
1070             }
1071           },
1072           "additionalProperties": false,
1073           "required": [
1074             "NotifyWatcherId",
1075             "Error"
1076           ]
1077         },
1078         "StateServingInfo": {
1079           "type": "object",
1080           "properties": {
1081             "APIPort": {
1082               "type": "integer"
1083             },
1084             "CAPrivateKey": {
1085               "type": "string"
1086             },
1087             "Cert": {
1088               "type": "string"
1089             },
1090             "PrivateKey": {
1091               "type": "string"
1092             },
1093             "SharedSecret": {
1094               "type": "string"
1095             },
1096             "StatePort": {
1097               "type": "integer"
1098             },
1099             "SystemIdentity": {
1100               "type": "string"
1101             }
1102           },
1103           "additionalProperties": false,
1104           "required": [
1105             "APIPort",
1106             "StatePort",
1107             "Cert",
1108             "PrivateKey",
1109             "CAPrivateKey",
1110             "SharedSecret",
1111             "SystemIdentity"
1112           ]
1113         },
1114         "caveat": {
1115           "type": "object",
1116           "properties": {
1117             "caveatId": {
1118               "$ref": "#/definitions/packet"
1119             },
1120             "location": {
1121               "$ref": "#/definitions/packet"
1122             },
1123             "verificationId": {
1124               "$ref": "#/definitions/packet"
1125             }
1126           },
1127           "additionalProperties": false,
1128           "required": [
1129             "location",
1130             "caveatId",
1131             "verificationId"
1132           ]
1133         },
1134         "packet": {
1135           "type": "object",
1136           "properties": {
1137             "headerLen": {
1138               "type": "integer"
1139             },
1140             "start": {
1141               "type": "integer"
1142             },
1143             "totalLen": {
1144               "type": "integer"
1145             }
1146           },
1147           "additionalProperties": false,
1148           "required": [
1149             "start",
1150             "totalLen",
1151             "headerLen"
1152           ]
1153         }
1154       }
1155     }
1156   },
1157   {
1158     "Name": "AgentTools",
1159     "Version": 1,
1160     "Schema": {
1161       "type": "object",
1162       "properties": {
1163         "UpdateToolsAvailable": {
1164           "type": "object"
1165         }
1166       }
1167     }
1168   },
1169   {
1170     "Name": "AllModelWatcher",
1171     "Version": 2,
1172     "Schema": {
1173       "type": "object",
1174       "properties": {
1175         "Next": {
1176           "type": "object",
1177           "properties": {
1178             "Result": {
1179               "$ref": "#/definitions/AllWatcherNextResults"
1180             }
1181           }
1182         },
1183         "Stop": {
1184           "type": "object"
1185         }
1186       },
1187       "definitions": {
1188         "AllWatcherNextResults": {
1189           "type": "object",
1190           "properties": {
1191             "Deltas": {
1192               "type": "array",
1193               "items": {
1194                 "$ref": "#/definitions/Delta"
1195               }
1196             }
1197           },
1198           "additionalProperties": false,
1199           "required": [
1200             "Deltas"
1201           ]
1202         },
1203         "Delta": {
1204           "type": "object",
1205           "properties": {
1206             "Entity": {
1207               "type": "object",
1208               "additionalProperties": true
1209             },
1210             "Removed": {
1211               "type": "boolean"
1212             }
1213           },
1214           "additionalProperties": false,
1215           "required": [
1216             "Removed",
1217             "Entity"
1218           ]
1219         }
1220       }
1221     }
1222   },
1223   {
1224     "Name": "AllWatcher",
1225     "Version": 1,
1226     "Schema": {
1227       "type": "object",
1228       "properties": {
1229         "Next": {
1230           "type": "object",
1231           "properties": {
1232             "Result": {
1233               "$ref": "#/definitions/AllWatcherNextResults"
1234             }
1235           }
1236         },
1237         "Stop": {
1238           "type": "object"
1239         }
1240       },
1241       "definitions": {
1242         "AllWatcherNextResults": {
1243           "type": "object",
1244           "properties": {
1245             "Deltas": {
1246               "type": "array",
1247               "items": {
1248                 "$ref": "#/definitions/Delta"
1249               }
1250             }
1251           },
1252           "additionalProperties": false,
1253           "required": [
1254             "Deltas"
1255           ]
1256         },
1257         "Delta": {
1258           "type": "object",
1259           "properties": {
1260             "Entity": {
1261               "type": "object",
1262               "additionalProperties": true
1263             },
1264             "Removed": {
1265               "type": "boolean"
1266             }
1267           },
1268           "additionalProperties": false,
1269           "required": [
1270             "Removed",
1271             "Entity"
1272           ]
1273         }
1274       }
1275     }
1276   },
1277   {
1278     "Name": "Annotations",
1279     "Version": 2,
1280     "Schema": {
1281       "type": "object",
1282       "properties": {
1283         "Get": {
1284           "type": "object",
1285           "properties": {
1286             "Params": {
1287               "$ref": "#/definitions/Entities"
1288             },
1289             "Result": {
1290               "$ref": "#/definitions/AnnotationsGetResults"
1291             }
1292           }
1293         },
1294         "Set": {
1295           "type": "object",
1296           "properties": {
1297             "Params": {
1298               "$ref": "#/definitions/AnnotationsSet"
1299             },
1300             "Result": {
1301               "$ref": "#/definitions/ErrorResults"
1302             }
1303           }
1304         }
1305       },
1306       "definitions": {
1307         "AnnotationsGetResult": {
1308           "type": "object",
1309           "properties": {
1310             "Annotations": {
1311               "type": "object",
1312               "patternProperties": {
1313                 ".*": {
1314                   "type": "string"
1315                 }
1316               }
1317             },
1318             "EntityTag": {
1319               "type": "string"
1320             },
1321             "Error": {
1322               "$ref": "#/definitions/ErrorResult"
1323             }
1324           },
1325           "additionalProperties": false,
1326           "required": [
1327             "EntityTag",
1328             "Annotations",
1329             "Error"
1330           ]
1331         },
1332         "AnnotationsGetResults": {
1333           "type": "object",
1334           "properties": {
1335             "Results": {
1336               "type": "array",
1337               "items": {
1338                 "$ref": "#/definitions/AnnotationsGetResult"
1339               }
1340             }
1341           },
1342           "additionalProperties": false,
1343           "required": [
1344             "Results"
1345           ]
1346         },
1347         "AnnotationsSet": {
1348           "type": "object",
1349           "properties": {
1350             "Annotations": {
1351               "type": "array",
1352               "items": {
1353                 "$ref": "#/definitions/EntityAnnotations"
1354               }
1355             }
1356           },
1357           "additionalProperties": false,
1358           "required": [
1359             "Annotations"
1360           ]
1361         },
1362         "Entities": {
1363           "type": "object",
1364           "properties": {
1365             "Entities": {
1366               "type": "array",
1367               "items": {
1368                 "$ref": "#/definitions/Entity"
1369               }
1370             }
1371           },
1372           "additionalProperties": false,
1373           "required": [
1374             "Entities"
1375           ]
1376         },
1377         "Entity": {
1378           "type": "object",
1379           "properties": {
1380             "Tag": {
1381               "type": "string"
1382             }
1383           },
1384           "additionalProperties": false,
1385           "required": [
1386             "Tag"
1387           ]
1388         },
1389         "EntityAnnotations": {
1390           "type": "object",
1391           "properties": {
1392             "Annotations": {
1393               "type": "object",
1394               "patternProperties": {
1395                 ".*": {
1396                   "type": "string"
1397                 }
1398               }
1399             },
1400             "EntityTag": {
1401               "type": "string"
1402             }
1403           },
1404           "additionalProperties": false,
1405           "required": [
1406             "EntityTag",
1407             "Annotations"
1408           ]
1409         },
1410         "Error": {
1411           "type": "object",
1412           "properties": {
1413             "Code": {
1414               "type": "string"
1415             },
1416             "Info": {
1417               "$ref": "#/definitions/ErrorInfo"
1418             },
1419             "Message": {
1420               "type": "string"
1421             }
1422           },
1423           "additionalProperties": false,
1424           "required": [
1425             "Message",
1426             "Code"
1427           ]
1428         },
1429         "ErrorInfo": {
1430           "type": "object",
1431           "properties": {
1432             "Macaroon": {
1433               "$ref": "#/definitions/Macaroon"
1434             },
1435             "MacaroonPath": {
1436               "type": "string"
1437             }
1438           },
1439           "additionalProperties": false
1440         },
1441         "ErrorResult": {
1442           "type": "object",
1443           "properties": {
1444             "Error": {
1445               "$ref": "#/definitions/Error"
1446             }
1447           },
1448           "additionalProperties": false,
1449           "required": [
1450             "Error"
1451           ]
1452         },
1453         "ErrorResults": {
1454           "type": "object",
1455           "properties": {
1456             "Results": {
1457               "type": "array",
1458               "items": {
1459                 "$ref": "#/definitions/ErrorResult"
1460               }
1461             }
1462           },
1463           "additionalProperties": false,
1464           "required": [
1465             "Results"
1466           ]
1467         },
1468         "Macaroon": {
1469           "type": "object",
1470           "properties": {
1471             "caveats": {
1472               "type": "array",
1473               "items": {
1474                 "$ref": "#/definitions/caveat"
1475               }
1476             },
1477             "data": {
1478               "type": "array",
1479               "items": {
1480                 "type": "integer"
1481               }
1482             },
1483             "id": {
1484               "$ref": "#/definitions/packet"
1485             },
1486             "location": {
1487               "$ref": "#/definitions/packet"
1488             },
1489             "sig": {
1490               "type": "array",
1491               "items": {
1492                 "type": "integer"
1493               }
1494             }
1495           },
1496           "additionalProperties": false,
1497           "required": [
1498             "data",
1499             "location",
1500             "id",
1501             "caveats",
1502             "sig"
1503           ]
1504         },
1505         "caveat": {
1506           "type": "object",
1507           "properties": {
1508             "caveatId": {
1509               "$ref": "#/definitions/packet"
1510             },
1511             "location": {
1512               "$ref": "#/definitions/packet"
1513             },
1514             "verificationId": {
1515               "$ref": "#/definitions/packet"
1516             }
1517           },
1518           "additionalProperties": false,
1519           "required": [
1520             "location",
1521             "caveatId",
1522             "verificationId"
1523           ]
1524         },
1525         "packet": {
1526           "type": "object",
1527           "properties": {
1528             "headerLen": {
1529               "type": "integer"
1530             },
1531             "start": {
1532               "type": "integer"
1533             },
1534             "totalLen": {
1535               "type": "integer"
1536             }
1537           },
1538           "additionalProperties": false,
1539           "required": [
1540             "start",
1541             "totalLen",
1542             "headerLen"
1543           ]
1544         }
1545       }
1546     }
1547   },
1548   {
1549     "Name": "Application",
1550     "Version": 1,
1551     "Schema": {
1552       "type": "object",
1553       "properties": {
1554         "AddRelation": {
1555           "type": "object",
1556           "properties": {
1557             "Params": {
1558               "$ref": "#/definitions/AddRelation"
1559             },
1560             "Result": {
1561               "$ref": "#/definitions/AddRelationResults"
1562             }
1563           }
1564         },
1565         "AddUnits": {
1566           "type": "object",
1567           "properties": {
1568             "Params": {
1569               "$ref": "#/definitions/AddApplicationUnits"
1570             },
1571             "Result": {
1572               "$ref": "#/definitions/AddApplicationUnitsResults"
1573             }
1574           }
1575         },
1576         "CharmRelations": {
1577           "type": "object",
1578           "properties": {
1579             "Params": {
1580               "$ref": "#/definitions/ApplicationCharmRelations"
1581             },
1582             "Result": {
1583               "$ref": "#/definitions/ApplicationCharmRelationsResults"
1584             }
1585           }
1586         },
1587         "Deploy": {
1588           "type": "object",
1589           "properties": {
1590             "Params": {
1591               "$ref": "#/definitions/ApplicationsDeploy"
1592             },
1593             "Result": {
1594               "$ref": "#/definitions/ErrorResults"
1595             }
1596           }
1597         },
1598         "Destroy": {
1599           "type": "object",
1600           "properties": {
1601             "Params": {
1602               "$ref": "#/definitions/ApplicationDestroy"
1603             }
1604           }
1605         },
1606         "DestroyRelation": {
1607           "type": "object",
1608           "properties": {
1609             "Params": {
1610               "$ref": "#/definitions/DestroyRelation"
1611             }
1612           }
1613         },
1614         "DestroyUnits": {
1615           "type": "object",
1616           "properties": {
1617             "Params": {
1618               "$ref": "#/definitions/DestroyApplicationUnits"
1619             }
1620           }
1621         },
1622         "Expose": {
1623           "type": "object",
1624           "properties": {
1625             "Params": {
1626               "$ref": "#/definitions/ApplicationExpose"
1627             }
1628           }
1629         },
1630         "Get": {
1631           "type": "object",
1632           "properties": {
1633             "Params": {
1634               "$ref": "#/definitions/ApplicationGet"
1635             },
1636             "Result": {
1637               "$ref": "#/definitions/ApplicationGetResults"
1638             }
1639           }
1640         },
1641         "GetCharmURL": {
1642           "type": "object",
1643           "properties": {
1644             "Params": {
1645               "$ref": "#/definitions/ApplicationGet"
1646             },
1647             "Result": {
1648               "$ref": "#/definitions/StringResult"
1649             }
1650           }
1651         },
1652         "GetConstraints": {
1653           "type": "object",
1654           "properties": {
1655             "Params": {
1656               "$ref": "#/definitions/GetApplicationConstraints"
1657             },
1658             "Result": {
1659               "$ref": "#/definitions/GetConstraintsResults"
1660             }
1661           }
1662         },
1663         "Set": {
1664           "type": "object",
1665           "properties": {
1666             "Params": {
1667               "$ref": "#/definitions/ApplicationSet"
1668             }
1669           }
1670         },
1671         "SetCharm": {
1672           "type": "object",
1673           "properties": {
1674             "Params": {
1675               "$ref": "#/definitions/ApplicationSetCharm"
1676             }
1677           }
1678         },
1679         "SetConstraints": {
1680           "type": "object",
1681           "properties": {
1682             "Params": {
1683               "$ref": "#/definitions/SetConstraints"
1684             }
1685           }
1686         },
1687         "SetMetricCredentials": {
1688           "type": "object",
1689           "properties": {
1690             "Params": {
1691               "$ref": "#/definitions/ApplicationMetricCredentials"
1692             },
1693             "Result": {
1694               "$ref": "#/definitions/ErrorResults"
1695             }
1696           }
1697         },
1698         "Unexpose": {
1699           "type": "object",
1700           "properties": {
1701             "Params": {
1702               "$ref": "#/definitions/ApplicationUnexpose"
1703             }
1704           }
1705         },
1706         "Unset": {
1707           "type": "object",
1708           "properties": {
1709             "Params": {
1710               "$ref": "#/definitions/ApplicationUnset"
1711             }
1712           }
1713         },
1714         "Update": {
1715           "type": "object",
1716           "properties": {
1717             "Params": {
1718               "$ref": "#/definitions/ApplicationUpdate"
1719             }
1720           }
1721         }
1722       },
1723       "definitions": {
1724         "AddApplicationUnits": {
1725           "type": "object",
1726           "properties": {
1727             "ApplicationName": {
1728               "type": "string"
1729             },
1730             "NumUnits": {
1731               "type": "integer"
1732             },
1733             "Placement": {
1734               "type": "array",
1735               "items": {
1736                 "$ref": "#/definitions/Placement"
1737               }
1738             }
1739           },
1740           "additionalProperties": false,
1741           "required": [
1742             "ApplicationName",
1743             "NumUnits",
1744             "Placement"
1745           ]
1746         },
1747         "AddApplicationUnitsResults": {
1748           "type": "object",
1749           "properties": {
1750             "Units": {
1751               "type": "array",
1752               "items": {
1753                 "type": "string"
1754               }
1755             }
1756           },
1757           "additionalProperties": false,
1758           "required": [
1759             "Units"
1760           ]
1761         },
1762         "AddRelation": {
1763           "type": "object",
1764           "properties": {
1765             "Endpoints": {
1766               "type": "array",
1767               "items": {
1768                 "type": "string"
1769               }
1770             }
1771           },
1772           "additionalProperties": false,
1773           "required": [
1774             "Endpoints"
1775           ]
1776         },
1777         "AddRelationResults": {
1778           "type": "object",
1779           "properties": {
1780             "Endpoints": {
1781               "type": "object",
1782               "patternProperties": {
1783                 ".*": {
1784                   "$ref": "#/definitions/Relation"
1785                 }
1786               }
1787             }
1788           },
1789           "additionalProperties": false,
1790           "required": [
1791             "Endpoints"
1792           ]
1793         },
1794         "ApplicationCharmRelations": {
1795           "type": "object",
1796           "properties": {
1797             "ApplicationName": {
1798               "type": "string"
1799             }
1800           },
1801           "additionalProperties": false,
1802           "required": [
1803             "ApplicationName"
1804           ]
1805         },
1806         "ApplicationCharmRelationsResults": {
1807           "type": "object",
1808           "properties": {
1809             "CharmRelations": {
1810               "type": "array",
1811               "items": {
1812                 "type": "string"
1813               }
1814             }
1815           },
1816           "additionalProperties": false,
1817           "required": [
1818             "CharmRelations"
1819           ]
1820         },
1821         "ApplicationDeploy": {
1822           "type": "object",
1823           "properties": {
1824             "ApplicationName": {
1825               "type": "string"
1826             },
1827             "Channel": {
1828               "type": "string"
1829             },
1830             "CharmUrl": {
1831               "type": "string"
1832             },
1833             "Config": {
1834               "type": "object",
1835               "patternProperties": {
1836                 ".*": {
1837                   "type": "string"
1838                 }
1839               }
1840             },
1841             "ConfigYAML": {
1842               "type": "string"
1843             },
1844             "Constraints": {
1845               "$ref": "#/definitions/Value"
1846             },
1847             "EndpointBindings": {
1848               "type": "object",
1849               "patternProperties": {
1850                 ".*": {
1851                   "type": "string"
1852                 }
1853               }
1854             },
1855             "NumUnits": {
1856               "type": "integer"
1857             },
1858             "Placement": {
1859               "type": "array",
1860               "items": {
1861                 "$ref": "#/definitions/Placement"
1862               }
1863             },
1864             "Resources": {
1865               "type": "object",
1866               "patternProperties": {
1867                 ".*": {
1868                   "type": "string"
1869                 }
1870               }
1871             },
1872             "Series": {
1873               "type": "string"
1874             },
1875             "Storage": {
1876               "type": "object",
1877               "patternProperties": {
1878                 ".*": {
1879                   "$ref": "#/definitions/Constraints"
1880                 }
1881               }
1882             }
1883           },
1884           "additionalProperties": false,
1885           "required": [
1886             "ApplicationName",
1887             "Series",
1888             "CharmUrl",
1889             "Channel",
1890             "NumUnits",
1891             "Config",
1892             "ConfigYAML",
1893             "Constraints",
1894             "Placement",
1895             "Storage",
1896             "EndpointBindings",
1897             "Resources"
1898           ]
1899         },
1900         "ApplicationDestroy": {
1901           "type": "object",
1902           "properties": {
1903             "ApplicationName": {
1904               "type": "string"
1905             }
1906           },
1907           "additionalProperties": false,
1908           "required": [
1909             "ApplicationName"
1910           ]
1911         },
1912         "ApplicationExpose": {
1913           "type": "object",
1914           "properties": {
1915             "ApplicationName": {
1916               "type": "string"
1917             }
1918           },
1919           "additionalProperties": false,
1920           "required": [
1921             "ApplicationName"
1922           ]
1923         },
1924         "ApplicationGet": {
1925           "type": "object",
1926           "properties": {
1927             "ApplicationName": {
1928               "type": "string"
1929             }
1930           },
1931           "additionalProperties": false,
1932           "required": [
1933             "ApplicationName"
1934           ]
1935         },
1936         "ApplicationGetResults": {
1937           "type": "object",
1938           "properties": {
1939             "Application": {
1940               "type": "string"
1941             },
1942             "Charm": {
1943               "type": "string"
1944             },
1945             "Config": {
1946               "type": "object",
1947               "patternProperties": {
1948                 ".*": {
1949                   "type": "object",
1950                   "additionalProperties": true
1951                 }
1952               }
1953             },
1954             "Constraints": {
1955               "$ref": "#/definitions/Value"
1956             }
1957           },
1958           "additionalProperties": false,
1959           "required": [
1960             "Application",
1961             "Charm",
1962             "Config",
1963             "Constraints"
1964           ]
1965         },
1966         "ApplicationMetricCredential": {
1967           "type": "object",
1968           "properties": {
1969             "ApplicationName": {
1970               "type": "string"
1971             },
1972             "MetricCredentials": {
1973               "type": "array",
1974               "items": {
1975                 "type": "integer"
1976               }
1977             }
1978           },
1979           "additionalProperties": false,
1980           "required": [
1981             "ApplicationName",
1982             "MetricCredentials"
1983           ]
1984         },
1985         "ApplicationMetricCredentials": {
1986           "type": "object",
1987           "properties": {
1988             "Creds": {
1989               "type": "array",
1990               "items": {
1991                 "$ref": "#/definitions/ApplicationMetricCredential"
1992               }
1993             }
1994           },
1995           "additionalProperties": false,
1996           "required": [
1997             "Creds"
1998           ]
1999         },
2000         "ApplicationSet": {
2001           "type": "object",
2002           "properties": {
2003             "ApplicationName": {
2004               "type": "string"
2005             },
2006             "Options": {
2007               "type": "object",
2008               "patternProperties": {
2009                 ".*": {
2010                   "type": "string"
2011                 }
2012               }
2013             }
2014           },
2015           "additionalProperties": false,
2016           "required": [
2017             "ApplicationName",
2018             "Options"
2019           ]
2020         },
2021         "ApplicationSetCharm": {
2022           "type": "object",
2023           "properties": {
2024             "applicationname": {
2025               "type": "string"
2026             },
2027             "charmurl": {
2028               "type": "string"
2029             },
2030             "cs-channel": {
2031               "type": "string"
2032             },
2033             "forceseries": {
2034               "type": "boolean"
2035             },
2036             "forceunits": {
2037               "type": "boolean"
2038             },
2039             "resourceids": {
2040               "type": "object",
2041               "patternProperties": {
2042                 ".*": {
2043                   "type": "string"
2044                 }
2045               }
2046             }
2047           },
2048           "additionalProperties": false,
2049           "required": [
2050             "applicationname",
2051             "charmurl",
2052             "cs-channel",
2053             "forceunits",
2054             "forceseries",
2055             "resourceids"
2056           ]
2057         },
2058         "ApplicationUnexpose": {
2059           "type": "object",
2060           "properties": {
2061             "ApplicationName": {
2062               "type": "string"
2063             }
2064           },
2065           "additionalProperties": false,
2066           "required": [
2067             "ApplicationName"
2068           ]
2069         },
2070         "ApplicationUnset": {
2071           "type": "object",
2072           "properties": {
2073             "ApplicationName": {
2074               "type": "string"
2075             },
2076             "Options": {
2077               "type": "array",
2078               "items": {
2079                 "type": "string"
2080               }
2081             }
2082           },
2083           "additionalProperties": false,
2084           "required": [
2085             "ApplicationName",
2086             "Options"
2087           ]
2088         },
2089         "ApplicationUpdate": {
2090           "type": "object",
2091           "properties": {
2092             "ApplicationName": {
2093               "type": "string"
2094             },
2095             "CharmUrl": {
2096               "type": "string"
2097             },
2098             "Constraints": {
2099               "$ref": "#/definitions/Value"
2100             },
2101             "ForceCharmUrl": {
2102               "type": "boolean"
2103             },
2104             "ForceSeries": {
2105               "type": "boolean"
2106             },
2107             "MinUnits": {
2108               "type": "integer"
2109             },
2110             "SettingsStrings": {
2111               "type": "object",
2112               "patternProperties": {
2113                 ".*": {
2114                   "type": "string"
2115                 }
2116               }
2117             },
2118             "SettingsYAML": {
2119               "type": "string"
2120             }
2121           },
2122           "additionalProperties": false,
2123           "required": [
2124             "ApplicationName",
2125             "CharmUrl",
2126             "ForceCharmUrl",
2127             "ForceSeries",
2128             "MinUnits",
2129             "SettingsStrings",
2130             "SettingsYAML",
2131             "Constraints"
2132           ]
2133         },
2134         "ApplicationsDeploy": {
2135           "type": "object",
2136           "properties": {
2137             "Applications": {
2138               "type": "array",
2139               "items": {
2140                 "$ref": "#/definitions/ApplicationDeploy"
2141               }
2142             }
2143           },
2144           "additionalProperties": false,
2145           "required": [
2146             "Applications"
2147           ]
2148         },
2149         "Constraints": {
2150           "type": "object",
2151           "properties": {
2152             "Count": {
2153               "type": "integer"
2154             },
2155             "Pool": {
2156               "type": "string"
2157             },
2158             "Size": {
2159               "type": "integer"
2160             }
2161           },
2162           "additionalProperties": false,
2163           "required": [
2164             "Pool",
2165             "Size",
2166             "Count"
2167           ]
2168         },
2169         "DestroyApplicationUnits": {
2170           "type": "object",
2171           "properties": {
2172             "UnitNames": {
2173               "type": "array",
2174               "items": {
2175                 "type": "string"
2176               }
2177             }
2178           },
2179           "additionalProperties": false,
2180           "required": [
2181             "UnitNames"
2182           ]
2183         },
2184         "DestroyRelation": {
2185           "type": "object",
2186           "properties": {
2187             "Endpoints": {
2188               "type": "array",
2189               "items": {
2190                 "type": "string"
2191               }
2192             }
2193           },
2194           "additionalProperties": false,
2195           "required": [
2196             "Endpoints"
2197           ]
2198         },
2199         "Error": {
2200           "type": "object",
2201           "properties": {
2202             "Code": {
2203               "type": "string"
2204             },
2205             "Info": {
2206               "$ref": "#/definitions/ErrorInfo"
2207             },
2208             "Message": {
2209               "type": "string"
2210             }
2211           },
2212           "additionalProperties": false,
2213           "required": [
2214             "Message",
2215             "Code"
2216           ]
2217         },
2218         "ErrorInfo": {
2219           "type": "object",
2220           "properties": {
2221             "Macaroon": {
2222               "$ref": "#/definitions/Macaroon"
2223             },
2224             "MacaroonPath": {
2225               "type": "string"
2226             }
2227           },
2228           "additionalProperties": false
2229         },
2230         "ErrorResult": {
2231           "type": "object",
2232           "properties": {
2233             "Error": {
2234               "$ref": "#/definitions/Error"
2235             }
2236           },
2237           "additionalProperties": false,
2238           "required": [
2239             "Error"
2240           ]
2241         },
2242         "ErrorResults": {
2243           "type": "object",
2244           "properties": {
2245             "Results": {
2246               "type": "array",
2247               "items": {
2248                 "$ref": "#/definitions/ErrorResult"
2249               }
2250             }
2251           },
2252           "additionalProperties": false,
2253           "required": [
2254             "Results"
2255           ]
2256         },
2257         "GetApplicationConstraints": {
2258           "type": "object",
2259           "properties": {
2260             "ApplicationName": {
2261               "type": "string"
2262             }
2263           },
2264           "additionalProperties": false,
2265           "required": [
2266             "ApplicationName"
2267           ]
2268         },
2269         "GetConstraintsResults": {
2270           "type": "object",
2271           "properties": {
2272             "Constraints": {
2273               "$ref": "#/definitions/Value"
2274             }
2275           },
2276           "additionalProperties": false,
2277           "required": [
2278             "Constraints"
2279           ]
2280         },
2281         "Macaroon": {
2282           "type": "object",
2283           "properties": {
2284             "caveats": {
2285               "type": "array",
2286               "items": {
2287                 "$ref": "#/definitions/caveat"
2288               }
2289             },
2290             "data": {
2291               "type": "array",
2292               "items": {
2293                 "type": "integer"
2294               }
2295             },
2296             "id": {
2297               "$ref": "#/definitions/packet"
2298             },
2299             "location": {
2300               "$ref": "#/definitions/packet"
2301             },
2302             "sig": {
2303               "type": "array",
2304               "items": {
2305                 "type": "integer"
2306               }
2307             }
2308           },
2309           "additionalProperties": false,
2310           "required": [
2311             "data",
2312             "location",
2313             "id",
2314             "caveats",
2315             "sig"
2316           ]
2317         },
2318         "Placement": {
2319           "type": "object",
2320           "properties": {
2321             "Directive": {
2322               "type": "string"
2323             },
2324             "Scope": {
2325               "type": "string"
2326             }
2327           },
2328           "additionalProperties": false,
2329           "required": [
2330             "Scope",
2331             "Directive"
2332           ]
2333         },
2334         "Relation": {
2335           "type": "object",
2336           "properties": {
2337             "Interface": {
2338               "type": "string"
2339             },
2340             "Limit": {
2341               "type": "integer"
2342             },
2343             "Name": {
2344               "type": "string"
2345             },
2346             "Optional": {
2347               "type": "boolean"
2348             },
2349             "Role": {
2350               "type": "string"
2351             },
2352             "Scope": {
2353               "type": "string"
2354             }
2355           },
2356           "additionalProperties": false,
2357           "required": [
2358             "Name",
2359             "Role",
2360             "Interface",
2361             "Optional",
2362             "Limit",
2363             "Scope"
2364           ]
2365         },
2366         "SetConstraints": {
2367           "type": "object",
2368           "properties": {
2369             "ApplicationName": {
2370               "type": "string"
2371             },
2372             "Constraints": {
2373               "$ref": "#/definitions/Value"
2374             }
2375           },
2376           "additionalProperties": false,
2377           "required": [
2378             "ApplicationName",
2379             "Constraints"
2380           ]
2381         },
2382         "StringResult": {
2383           "type": "object",
2384           "properties": {
2385             "Error": {
2386               "$ref": "#/definitions/Error"
2387             },
2388             "Result": {
2389               "type": "string"
2390             }
2391           },
2392           "additionalProperties": false,
2393           "required": [
2394             "Error",
2395             "Result"
2396           ]
2397         },
2398         "Value": {
2399           "type": "object",
2400           "properties": {
2401             "arch": {
2402               "type": "string"
2403             },
2404             "container": {
2405               "type": "string"
2406             },
2407             "cpu-cores": {
2408               "type": "integer"
2409             },
2410             "cpu-power": {
2411               "type": "integer"
2412             },
2413             "instance-type": {
2414               "type": "string"
2415             },
2416             "mem": {
2417               "type": "integer"
2418             },
2419             "root-disk": {
2420               "type": "integer"
2421             },
2422             "spaces": {
2423               "type": "array",
2424               "items": {
2425                 "type": "string"
2426               }
2427             },
2428             "tags": {
2429               "type": "array",
2430               "items": {
2431                 "type": "string"
2432               }
2433             },
2434             "virt-type": {
2435               "type": "string"
2436             }
2437           },
2438           "additionalProperties": false
2439         },
2440         "caveat": {
2441           "type": "object",
2442           "properties": {
2443             "caveatId": {
2444               "$ref": "#/definitions/packet"
2445             },
2446             "location": {
2447               "$ref": "#/definitions/packet"
2448             },
2449             "verificationId": {
2450               "$ref": "#/definitions/packet"
2451             }
2452           },
2453           "additionalProperties": false,
2454           "required": [
2455             "location",
2456             "caveatId",
2457             "verificationId"
2458           ]
2459         },
2460         "packet": {
2461           "type": "object",
2462           "properties": {
2463             "headerLen": {
2464               "type": "integer"
2465             },
2466             "start": {
2467               "type": "integer"
2468             },
2469             "totalLen": {
2470               "type": "integer"
2471             }
2472           },
2473           "additionalProperties": false,
2474           "required": [
2475             "start",
2476             "totalLen",
2477             "headerLen"
2478           ]
2479         }
2480       }
2481     }
2482   },
2483   {
2484     "Name": "ApplicationScaler",
2485     "Version": 1,
2486     "Schema": {
2487       "type": "object",
2488       "properties": {
2489         "Rescale": {
2490           "type": "object",
2491           "properties": {
2492             "Params": {
2493               "$ref": "#/definitions/Entities"
2494             },
2495             "Result": {
2496               "$ref": "#/definitions/ErrorResults"
2497             }
2498           }
2499         },
2500         "Watch": {
2501           "type": "object",
2502           "properties": {
2503             "Result": {
2504               "$ref": "#/definitions/StringsWatchResult"
2505             }
2506           }
2507         }
2508       },
2509       "definitions": {
2510         "Entities": {
2511           "type": "object",
2512           "properties": {
2513             "Entities": {
2514               "type": "array",
2515               "items": {
2516                 "$ref": "#/definitions/Entity"
2517               }
2518             }
2519           },
2520           "additionalProperties": false,
2521           "required": [
2522             "Entities"
2523           ]
2524         },
2525         "Entity": {
2526           "type": "object",
2527           "properties": {
2528             "Tag": {
2529               "type": "string"
2530             }
2531           },
2532           "additionalProperties": false,
2533           "required": [
2534             "Tag"
2535           ]
2536         },
2537         "Error": {
2538           "type": "object",
2539           "properties": {
2540             "Code": {
2541               "type": "string"
2542             },
2543             "Info": {
2544               "$ref": "#/definitions/ErrorInfo"
2545             },
2546             "Message": {
2547               "type": "string"
2548             }
2549           },
2550           "additionalProperties": false,
2551           "required": [
2552             "Message",
2553             "Code"
2554           ]
2555         },
2556         "ErrorInfo": {
2557           "type": "object",
2558           "properties": {
2559             "Macaroon": {
2560               "$ref": "#/definitions/Macaroon"
2561             },
2562             "MacaroonPath": {
2563               "type": "string"
2564             }
2565           },
2566           "additionalProperties": false
2567         },
2568         "ErrorResult": {
2569           "type": "object",
2570           "properties": {
2571             "Error": {
2572               "$ref": "#/definitions/Error"
2573             }
2574           },
2575           "additionalProperties": false,
2576           "required": [
2577             "Error"
2578           ]
2579         },
2580         "ErrorResults": {
2581           "type": "object",
2582           "properties": {
2583             "Results": {
2584               "type": "array",
2585               "items": {
2586                 "$ref": "#/definitions/ErrorResult"
2587               }
2588             }
2589           },
2590           "additionalProperties": false,
2591           "required": [
2592             "Results"
2593           ]
2594         },
2595         "Macaroon": {
2596           "type": "object",
2597           "properties": {
2598             "caveats": {
2599               "type": "array",
2600               "items": {
2601                 "$ref": "#/definitions/caveat"
2602               }
2603             },
2604             "data": {
2605               "type": "array",
2606               "items": {
2607                 "type": "integer"
2608               }
2609             },
2610             "id": {
2611               "$ref": "#/definitions/packet"
2612             },
2613             "location": {
2614               "$ref": "#/definitions/packet"
2615             },
2616             "sig": {
2617               "type": "array",
2618               "items": {
2619                 "type": "integer"
2620               }
2621             }
2622           },
2623           "additionalProperties": false,
2624           "required": [
2625             "data",
2626             "location",
2627             "id",
2628             "caveats",
2629             "sig"
2630           ]
2631         },
2632         "StringsWatchResult": {
2633           "type": "object",
2634           "properties": {
2635             "Changes": {
2636               "type": "array",
2637               "items": {
2638                 "type": "string"
2639               }
2640             },
2641             "Error": {
2642               "$ref": "#/definitions/Error"
2643             },
2644             "StringsWatcherId": {
2645               "type": "string"
2646             }
2647           },
2648           "additionalProperties": false,
2649           "required": [
2650             "StringsWatcherId",
2651             "Changes",
2652             "Error"
2653           ]
2654         },
2655         "caveat": {
2656           "type": "object",
2657           "properties": {
2658             "caveatId": {
2659               "$ref": "#/definitions/packet"
2660             },
2661             "location": {
2662               "$ref": "#/definitions/packet"
2663             },
2664             "verificationId": {
2665               "$ref": "#/definitions/packet"
2666             }
2667           },
2668           "additionalProperties": false,
2669           "required": [
2670             "location",
2671             "caveatId",
2672             "verificationId"
2673           ]
2674         },
2675         "packet": {
2676           "type": "object",
2677           "properties": {
2678             "headerLen": {
2679               "type": "integer"
2680             },
2681             "start": {
2682               "type": "integer"
2683             },
2684             "totalLen": {
2685               "type": "integer"
2686             }
2687           },
2688           "additionalProperties": false,
2689           "required": [
2690             "start",
2691             "totalLen",
2692             "headerLen"
2693           ]
2694         }
2695       }
2696     }
2697   },
2698   {
2699     "Name": "Backups",
2700     "Version": 1,
2701     "Schema": {
2702       "type": "object",
2703       "properties": {
2704         "Create": {
2705           "type": "object",
2706           "properties": {
2707             "Params": {
2708               "$ref": "#/definitions/BackupsCreateArgs"
2709             },
2710             "Result": {
2711               "$ref": "#/definitions/BackupsMetadataResult"
2712             }
2713           }
2714         },
2715         "FinishRestore": {
2716           "type": "object"
2717         },
2718         "Info": {
2719           "type": "object",
2720           "properties": {
2721             "Params": {
2722               "$ref": "#/definitions/BackupsInfoArgs"
2723             },
2724             "Result": {
2725               "$ref": "#/definitions/BackupsMetadataResult"
2726             }
2727           }
2728         },
2729         "List": {
2730           "type": "object",
2731           "properties": {
2732             "Params": {
2733               "$ref": "#/definitions/BackupsListArgs"
2734             },
2735             "Result": {
2736               "$ref": "#/definitions/BackupsListResult"
2737             }
2738           }
2739         },
2740         "PrepareRestore": {
2741           "type": "object"
2742         },
2743         "Remove": {
2744           "type": "object",
2745           "properties": {
2746             "Params": {
2747               "$ref": "#/definitions/BackupsRemoveArgs"
2748             }
2749           }
2750         },
2751         "Restore": {
2752           "type": "object",
2753           "properties": {
2754             "Params": {
2755               "$ref": "#/definitions/RestoreArgs"
2756             }
2757           }
2758         }
2759       },
2760       "definitions": {
2761         "BackupsCreateArgs": {
2762           "type": "object",
2763           "properties": {
2764             "Notes": {
2765               "type": "string"
2766             }
2767           },
2768           "additionalProperties": false,
2769           "required": [
2770             "Notes"
2771           ]
2772         },
2773         "BackupsInfoArgs": {
2774           "type": "object",
2775           "properties": {
2776             "ID": {
2777               "type": "string"
2778             }
2779           },
2780           "additionalProperties": false,
2781           "required": [
2782             "ID"
2783           ]
2784         },
2785         "BackupsListArgs": {
2786           "type": "object",
2787           "additionalProperties": false
2788         },
2789         "BackupsListResult": {
2790           "type": "object",
2791           "properties": {
2792             "List": {
2793               "type": "array",
2794               "items": {
2795                 "$ref": "#/definitions/BackupsMetadataResult"
2796               }
2797             }
2798           },
2799           "additionalProperties": false,
2800           "required": [
2801             "List"
2802           ]
2803         },
2804         "BackupsMetadataResult": {
2805           "type": "object",
2806           "properties": {
2807             "CACert": {
2808               "type": "string"
2809             },
2810             "CAPrivateKey": {
2811               "type": "string"
2812             },
2813             "Checksum": {
2814               "type": "string"
2815             },
2816             "ChecksumFormat": {
2817               "type": "string"
2818             },
2819             "Finished": {
2820               "type": "string",
2821               "format": "date-time"
2822             },
2823             "Hostname": {
2824               "type": "string"
2825             },
2826             "ID": {
2827               "type": "string"
2828             },
2829             "Machine": {
2830               "type": "string"
2831             },
2832             "Model": {
2833               "type": "string"
2834             },
2835             "Notes": {
2836               "type": "string"
2837             },
2838             "Series": {
2839               "type": "string"
2840             },
2841             "Size": {
2842               "type": "integer"
2843             },
2844             "Started": {
2845               "type": "string",
2846               "format": "date-time"
2847             },
2848             "Stored": {
2849               "type": "string",
2850               "format": "date-time"
2851             },
2852             "Version": {
2853               "$ref": "#/definitions/Number"
2854             }
2855           },
2856           "additionalProperties": false,
2857           "required": [
2858             "ID",
2859             "Checksum",
2860             "ChecksumFormat",
2861             "Size",
2862             "Stored",
2863             "Started",
2864             "Finished",
2865             "Notes",
2866             "Model",
2867             "Machine",
2868             "Hostname",
2869             "Version",
2870             "Series",
2871             "CACert",
2872             "CAPrivateKey"
2873           ]
2874         },
2875         "BackupsRemoveArgs": {
2876           "type": "object",
2877           "properties": {
2878             "ID": {
2879               "type": "string"
2880             }
2881           },
2882           "additionalProperties": false,
2883           "required": [
2884             "ID"
2885           ]
2886         },
2887         "Number": {
2888           "type": "object",
2889           "properties": {
2890             "Build": {
2891               "type": "integer"
2892             },
2893             "Major": {
2894               "type": "integer"
2895             },
2896             "Minor": {
2897               "type": "integer"
2898             },
2899             "Patch": {
2900               "type": "integer"
2901             },
2902             "Tag": {
2903               "type": "string"
2904             }
2905           },
2906           "additionalProperties": false,
2907           "required": [
2908             "Major",
2909             "Minor",
2910             "Tag",
2911             "Patch",
2912             "Build"
2913           ]
2914         },
2915         "RestoreArgs": {
2916           "type": "object",
2917           "properties": {
2918             "BackupId": {
2919               "type": "string"
2920             }
2921           },
2922           "additionalProperties": false,
2923           "required": [
2924             "BackupId"
2925           ]
2926         }
2927       }
2928     }
2929   },
2930   {
2931     "Name": "Block",
2932     "Version": 2,
2933     "Schema": {
2934       "type": "object",
2935       "properties": {
2936         "List": {
2937           "type": "object",
2938           "properties": {
2939             "Result": {
2940               "$ref": "#/definitions/BlockResults"
2941             }
2942           }
2943         },
2944         "SwitchBlockOff": {
2945           "type": "object",
2946           "properties": {
2947             "Params": {
2948               "$ref": "#/definitions/BlockSwitchParams"
2949             },
2950             "Result": {
2951               "$ref": "#/definitions/ErrorResult"
2952             }
2953           }
2954         },
2955         "SwitchBlockOn": {
2956           "type": "object",
2957           "properties": {
2958             "Params": {
2959               "$ref": "#/definitions/BlockSwitchParams"
2960             },
2961             "Result": {
2962               "$ref": "#/definitions/ErrorResult"
2963             }
2964           }
2965         }
2966       },
2967       "definitions": {
2968         "Block": {
2969           "type": "object",
2970           "properties": {
2971             "id": {
2972               "type": "string"
2973             },
2974             "message": {
2975               "type": "string"
2976             },
2977             "tag": {
2978               "type": "string"
2979             },
2980             "type": {
2981               "type": "string"
2982             }
2983           },
2984           "additionalProperties": false,
2985           "required": [
2986             "id",
2987             "tag",
2988             "type"
2989           ]
2990         },
2991         "BlockResult": {
2992           "type": "object",
2993           "properties": {
2994             "error": {
2995               "$ref": "#/definitions/Error"
2996             },
2997             "result": {
2998               "$ref": "#/definitions/Block"
2999             }
3000           },
3001           "additionalProperties": false,
3002           "required": [
3003             "result"
3004           ]
3005         },
3006         "BlockResults": {
3007           "type": "object",
3008           "properties": {
3009             "results": {
3010               "type": "array",
3011               "items": {
3012                 "$ref": "#/definitions/BlockResult"
3013               }
3014             }
3015           },
3016           "additionalProperties": false
3017         },
3018         "BlockSwitchParams": {
3019           "type": "object",
3020           "properties": {
3021             "message": {
3022               "type": "string"
3023             },
3024             "type": {
3025               "type": "string"
3026             }
3027           },
3028           "additionalProperties": false,
3029           "required": [
3030             "type"
3031           ]
3032         },
3033         "Error": {
3034           "type": "object",
3035           "properties": {
3036             "Code": {
3037               "type": "string"
3038             },
3039             "Info": {
3040               "$ref": "#/definitions/ErrorInfo"
3041             },
3042             "Message": {
3043               "type": "string"
3044             }
3045           },
3046           "additionalProperties": false,
3047           "required": [
3048             "Message",
3049             "Code"
3050           ]
3051         },
3052         "ErrorInfo": {
3053           "type": "object",
3054           "properties": {
3055             "Macaroon": {
3056               "$ref": "#/definitions/Macaroon"
3057             },
3058             "MacaroonPath": {
3059               "type": "string"
3060             }
3061           },
3062           "additionalProperties": false
3063         },
3064         "ErrorResult": {
3065           "type": "object",
3066           "properties": {
3067             "Error": {
3068               "$ref": "#/definitions/Error"
3069             }
3070           },
3071           "additionalProperties": false,
3072           "required": [
3073             "Error"
3074           ]
3075         },
3076         "Macaroon": {
3077           "type": "object",
3078           "properties": {
3079             "caveats": {
3080               "type": "array",
3081               "items": {
3082                 "$ref": "#/definitions/caveat"
3083               }
3084             },
3085             "data": {
3086               "type": "array",
3087               "items": {
3088                 "type": "integer"
3089               }
3090             },
3091             "id": {
3092               "$ref": "#/definitions/packet"
3093             },
3094             "location": {
3095               "$ref": "#/definitions/packet"
3096             },
3097             "sig": {
3098               "type": "array",
3099               "items": {
3100                 "type": "integer"
3101               }
3102             }
3103           },
3104           "additionalProperties": false,
3105           "required": [
3106             "data",
3107             "location",
3108             "id",
3109             "caveats",
3110             "sig"
3111           ]
3112         },
3113         "caveat": {
3114           "type": "object",
3115           "properties": {
3116             "caveatId": {
3117               "$ref": "#/definitions/packet"
3118             },
3119             "location": {
3120               "$ref": "#/definitions/packet"
3121             },
3122             "verificationId": {
3123               "$ref": "#/definitions/packet"
3124             }
3125           },
3126           "additionalProperties": false,
3127           "required": [
3128             "location",
3129             "caveatId",
3130             "verificationId"
3131           ]
3132         },
3133         "packet": {
3134           "type": "object",
3135           "properties": {
3136             "headerLen": {
3137               "type": "integer"
3138             },
3139             "start": {
3140               "type": "integer"
3141             },
3142             "totalLen": {
3143               "type": "integer"
3144             }
3145           },
3146           "additionalProperties": false,
3147           "required": [
3148             "start",
3149             "totalLen",
3150             "headerLen"
3151           ]
3152         }
3153       }
3154     }
3155   },
3156   {
3157     "Name": "CharmRevisionUpdater",
3158     "Version": 2,
3159     "Schema": {
3160       "type": "object",
3161       "properties": {
3162         "UpdateLatestRevisions": {
3163           "type": "object",
3164           "properties": {
3165             "Result": {
3166               "$ref": "#/definitions/ErrorResult"
3167             }
3168           }
3169         }
3170       },
3171       "definitions": {
3172         "Error": {
3173           "type": "object",
3174           "properties": {
3175             "Code": {
3176               "type": "string"
3177             },
3178             "Info": {
3179               "$ref": "#/definitions/ErrorInfo"
3180             },
3181             "Message": {
3182               "type": "string"
3183             }
3184           },
3185           "additionalProperties": false,
3186           "required": [
3187             "Message",
3188             "Code"
3189           ]
3190         },
3191         "ErrorInfo": {
3192           "type": "object",
3193           "properties": {
3194             "Macaroon": {
3195               "$ref": "#/definitions/Macaroon"
3196             },
3197             "MacaroonPath": {
3198               "type": "string"
3199             }
3200           },
3201           "additionalProperties": false
3202         },
3203         "ErrorResult": {
3204           "type": "object",
3205           "properties": {
3206             "Error": {
3207               "$ref": "#/definitions/Error"
3208             }
3209           },
3210           "additionalProperties": false,
3211           "required": [
3212             "Error"
3213           ]
3214         },
3215         "Macaroon": {
3216           "type": "object",
3217           "properties": {
3218             "caveats": {
3219               "type": "array",
3220               "items": {
3221                 "$ref": "#/definitions/caveat"
3222               }
3223             },
3224             "data": {
3225               "type": "array",
3226               "items": {
3227                 "type": "integer"
3228               }
3229             },
3230             "id": {
3231               "$ref": "#/definitions/packet"
3232             },
3233             "location": {
3234               "$ref": "#/definitions/packet"
3235             },
3236             "sig": {
3237               "type": "array",
3238               "items": {
3239                 "type": "integer"
3240               }
3241             }
3242           },
3243           "additionalProperties": false,
3244           "required": [
3245             "data",
3246             "location",
3247             "id",
3248             "caveats",
3249             "sig"
3250           ]
3251         },
3252         "caveat": {
3253           "type": "object",
3254           "properties": {
3255             "caveatId": {
3256               "$ref": "#/definitions/packet"
3257             },
3258             "location": {
3259               "$ref": "#/definitions/packet"
3260             },
3261             "verificationId": {
3262               "$ref": "#/definitions/packet"
3263             }
3264           },
3265           "additionalProperties": false,
3266           "required": [
3267             "location",
3268             "caveatId",
3269             "verificationId"
3270           ]
3271         },
3272         "packet": {
3273           "type": "object",
3274           "properties": {
3275             "headerLen": {
3276               "type": "integer"
3277             },
3278             "start": {
3279               "type": "integer"
3280             },
3281             "totalLen": {
3282               "type": "integer"
3283             }
3284           },
3285           "additionalProperties": false,
3286           "required": [
3287             "start",
3288             "totalLen",
3289             "headerLen"
3290           ]
3291         }
3292       }
3293     }
3294   },
3295   {
3296     "Name": "Charms",
3297     "Version": 2,
3298     "Schema": {
3299       "type": "object",
3300       "properties": {
3301         "CharmInfo": {
3302           "type": "object",
3303           "properties": {
3304             "Params": {
3305               "$ref": "#/definitions/CharmInfo"
3306             },
3307             "Result": {
3308               "$ref": "#/definitions/CharmInfo"
3309             }
3310           }
3311         },
3312         "IsMetered": {
3313           "type": "object",
3314           "properties": {
3315             "Params": {
3316               "$ref": "#/definitions/CharmInfo"
3317             },
3318             "Result": {
3319               "$ref": "#/definitions/IsMeteredResult"
3320             }
3321           }
3322         },
3323         "List": {
3324           "type": "object",
3325           "properties": {
3326             "Params": {
3327               "$ref": "#/definitions/CharmsList"
3328             },
3329             "Result": {
3330               "$ref": "#/definitions/CharmsListResult"
3331             }
3332           }
3333         }
3334       },
3335       "definitions": {
3336         "CharmInfo": {
3337           "type": "object",
3338           "properties": {
3339             "CharmURL": {
3340               "type": "string"
3341             }
3342           },
3343           "additionalProperties": false,
3344           "required": [
3345             "CharmURL"
3346           ]
3347         },
3348         "CharmsList": {
3349           "type": "object",
3350           "properties": {
3351             "Names": {
3352               "type": "array",
3353               "items": {
3354                 "type": "string"
3355               }
3356             }
3357           },
3358           "additionalProperties": false,
3359           "required": [
3360             "Names"
3361           ]
3362         },
3363         "CharmsListResult": {
3364           "type": "object",
3365           "properties": {
3366             "CharmURLs": {
3367               "type": "array",
3368               "items": {
3369                 "type": "string"
3370               }
3371             }
3372           },
3373           "additionalProperties": false,
3374           "required": [
3375             "CharmURLs"
3376           ]
3377         },
3378         "IsMeteredResult": {
3379           "type": "object",
3380           "properties": {
3381             "Metered": {
3382               "type": "boolean"
3383             }
3384           },
3385           "additionalProperties": false,
3386           "required": [
3387             "Metered"
3388           ]
3389         }
3390       }
3391     }
3392   },
3393   {
3394     "Name": "Cleaner",
3395     "Version": 2,
3396     "Schema": {
3397       "type": "object",
3398       "properties": {
3399         "Cleanup": {
3400           "type": "object"
3401         },
3402         "WatchCleanups": {
3403           "type": "object",
3404           "properties": {
3405             "Result": {
3406               "$ref": "#/definitions/NotifyWatchResult"
3407             }
3408           }
3409         }
3410       },
3411       "definitions": {
3412         "Error": {
3413           "type": "object",
3414           "properties": {
3415             "Code": {
3416               "type": "string"
3417             },
3418             "Info": {
3419               "$ref": "#/definitions/ErrorInfo"
3420             },
3421             "Message": {
3422               "type": "string"
3423             }
3424           },
3425           "additionalProperties": false,
3426           "required": [
3427             "Message",
3428             "Code"
3429           ]
3430         },
3431         "ErrorInfo": {
3432           "type": "object",
3433           "properties": {
3434             "Macaroon": {
3435               "$ref": "#/definitions/Macaroon"
3436             },
3437             "MacaroonPath": {
3438               "type": "string"
3439             }
3440           },
3441           "additionalProperties": false
3442         },
3443         "Macaroon": {
3444           "type": "object",
3445           "properties": {
3446             "caveats": {
3447               "type": "array",
3448               "items": {
3449                 "$ref": "#/definitions/caveat"
3450               }
3451             },
3452             "data": {
3453               "type": "array",
3454               "items": {
3455                 "type": "integer"
3456               }
3457             },
3458             "id": {
3459               "$ref": "#/definitions/packet"
3460             },
3461             "location": {
3462               "$ref": "#/definitions/packet"
3463             },
3464             "sig": {
3465               "type": "array",
3466               "items": {
3467                 "type": "integer"
3468               }
3469             }
3470           },
3471           "additionalProperties": false,
3472           "required": [
3473             "data",
3474             "location",
3475             "id",
3476             "caveats",
3477             "sig"
3478           ]
3479         },
3480         "NotifyWatchResult": {
3481           "type": "object",
3482           "properties": {
3483             "Error": {
3484               "$ref": "#/definitions/Error"
3485             },
3486             "NotifyWatcherId": {
3487               "type": "string"
3488             }
3489           },
3490           "additionalProperties": false,
3491           "required": [
3492             "NotifyWatcherId",
3493             "Error"
3494           ]
3495         },
3496         "caveat": {
3497           "type": "object",
3498           "properties": {
3499             "caveatId": {
3500               "$ref": "#/definitions/packet"
3501             },
3502             "location": {
3503               "$ref": "#/definitions/packet"
3504             },
3505             "verificationId": {
3506               "$ref": "#/definitions/packet"
3507             }
3508           },
3509           "additionalProperties": false,
3510           "required": [
3511             "location",
3512             "caveatId",
3513             "verificationId"
3514           ]
3515         },
3516         "packet": {
3517           "type": "object",
3518           "properties": {
3519             "headerLen": {
3520               "type": "integer"
3521             },
3522             "start": {
3523               "type": "integer"
3524             },
3525             "totalLen": {
3526               "type": "integer"
3527             }
3528           },
3529           "additionalProperties": false,
3530           "required": [
3531             "start",
3532             "totalLen",
3533             "headerLen"
3534           ]
3535         }
3536       }
3537     }
3538   },
3539   {
3540     "Name": "Client",
3541     "Version": 1,
3542     "Schema": {
3543       "type": "object",
3544       "properties": {
3545         "APIHostPorts": {
3546           "type": "object",
3547           "properties": {
3548             "Result": {
3549               "$ref": "#/definitions/APIHostPortsResult"
3550             }
3551           }
3552         },
3553         "AbortCurrentUpgrade": {
3554           "type": "object"
3555         },
3556         "AddCharm": {
3557           "type": "object",
3558           "properties": {
3559             "Params": {
3560               "$ref": "#/definitions/AddCharm"
3561             }
3562           }
3563         },
3564         "AddCharmWithAuthorization": {
3565           "type": "object",
3566           "properties": {
3567             "Params": {
3568               "$ref": "#/definitions/AddCharmWithAuthorization"
3569             }
3570           }
3571         },
3572         "AddMachines": {
3573           "type": "object",
3574           "properties": {
3575             "Params": {
3576               "$ref": "#/definitions/AddMachines"
3577             },
3578             "Result": {
3579               "$ref": "#/definitions/AddMachinesResults"
3580             }
3581           }
3582         },
3583         "AddMachinesV2": {
3584           "type": "object",
3585           "properties": {
3586             "Params": {
3587               "$ref": "#/definitions/AddMachines"
3588             },
3589             "Result": {
3590               "$ref": "#/definitions/AddMachinesResults"
3591             }
3592           }
3593         },
3594         "AgentVersion": {
3595           "type": "object",
3596           "properties": {
3597             "Result": {
3598               "$ref": "#/definitions/AgentVersionResult"
3599             }
3600           }
3601         },
3602         "CharmInfo": {
3603           "type": "object",
3604           "properties": {
3605             "Params": {
3606               "$ref": "#/definitions/CharmInfo"
3607             },
3608             "Result": {
3609               "$ref": "#/definitions/CharmInfo"
3610             }
3611           }
3612         },
3613         "DestroyMachines": {
3614           "type": "object",
3615           "properties": {
3616             "Params": {
3617               "$ref": "#/definitions/DestroyMachines"
3618             }
3619           }
3620         },
3621         "DestroyModel": {
3622           "type": "object"
3623         },
3624         "FindTools": {
3625           "type": "object",
3626           "properties": {
3627             "Params": {
3628               "$ref": "#/definitions/FindToolsParams"
3629             },
3630             "Result": {
3631               "$ref": "#/definitions/FindToolsResult"
3632             }
3633           }
3634         },
3635         "FullStatus": {
3636           "type": "object",
3637           "properties": {
3638             "Params": {
3639               "$ref": "#/definitions/StatusParams"
3640             },
3641             "Result": {
3642               "$ref": "#/definitions/FullStatus"
3643             }
3644           }
3645         },
3646         "GetBundleChanges": {
3647           "type": "object",
3648           "properties": {
3649             "Params": {
3650               "$ref": "#/definitions/GetBundleChangesParams"
3651             },
3652             "Result": {
3653               "$ref": "#/definitions/GetBundleChangesResults"
3654             }
3655           }
3656         },
3657         "GetModelConstraints": {
3658           "type": "object",
3659           "properties": {
3660             "Result": {
3661               "$ref": "#/definitions/GetConstraintsResults"
3662             }
3663           }
3664         },
3665         "InjectMachines": {
3666           "type": "object",
3667           "properties": {
3668             "Params": {
3669               "$ref": "#/definitions/AddMachines"
3670             },
3671             "Result": {
3672               "$ref": "#/definitions/AddMachinesResults"
3673             }
3674           }
3675         },
3676         "ModelGet": {
3677           "type": "object",
3678           "properties": {
3679             "Result": {
3680               "$ref": "#/definitions/ModelConfigResults"
3681             }
3682           }
3683         },
3684         "ModelInfo": {
3685           "type": "object",
3686           "properties": {
3687             "Result": {
3688               "$ref": "#/definitions/ModelInfo"
3689             }
3690           }
3691         },
3692         "ModelSet": {
3693           "type": "object",
3694           "properties": {
3695             "Params": {
3696               "$ref": "#/definitions/ModelSet"
3697             }
3698           }
3699         },
3700         "ModelUnset": {
3701           "type": "object",
3702           "properties": {
3703             "Params": {
3704               "$ref": "#/definitions/ModelUnset"
3705             }
3706           }
3707         },
3708         "ModelUserInfo": {
3709           "type": "object",
3710           "properties": {
3711             "Result": {
3712               "$ref": "#/definitions/ModelUserInfoResults"
3713             }
3714           }
3715         },
3716         "PrivateAddress": {
3717           "type": "object",
3718           "properties": {
3719             "Params": {
3720               "$ref": "#/definitions/PrivateAddress"
3721             },
3722             "Result": {
3723               "$ref": "#/definitions/PrivateAddressResults"
3724             }
3725           }
3726         },
3727         "ProvisioningScript": {
3728           "type": "object",
3729           "properties": {
3730             "Params": {
3731               "$ref": "#/definitions/ProvisioningScriptParams"
3732             },
3733             "Result": {
3734               "$ref": "#/definitions/ProvisioningScriptResult"
3735             }
3736           }
3737         },
3738         "PublicAddress": {
3739           "type": "object",
3740           "properties": {
3741             "Params": {
3742               "$ref": "#/definitions/PublicAddress"
3743             },
3744             "Result": {
3745               "$ref": "#/definitions/PublicAddressResults"
3746             }
3747           }
3748         },
3749         "ResolveCharms": {
3750           "type": "object",
3751           "properties": {
3752             "Params": {
3753               "$ref": "#/definitions/ResolveCharms"
3754             },
3755             "Result": {
3756               "$ref": "#/definitions/ResolveCharmResults"
3757             }
3758           }
3759         },
3760         "Resolved": {
3761           "type": "object",
3762           "properties": {
3763             "Params": {
3764               "$ref": "#/definitions/Resolved"
3765             }
3766           }
3767         },
3768         "RetryProvisioning": {
3769           "type": "object",
3770           "properties": {
3771             "Params": {
3772               "$ref": "#/definitions/Entities"
3773             },
3774             "Result": {
3775               "$ref": "#/definitions/ErrorResults"
3776             }
3777           }
3778         },
3779         "SetModelAgentVersion": {
3780           "type": "object",
3781           "properties": {
3782             "Params": {
3783               "$ref": "#/definitions/SetModelAgentVersion"
3784             }
3785           }
3786         },
3787         "SetModelConstraints": {
3788           "type": "object",
3789           "properties": {
3790             "Params": {
3791               "$ref": "#/definitions/SetConstraints"
3792             }
3793           }
3794         },
3795         "StatusHistory": {
3796           "type": "object",
3797           "properties": {
3798             "Params": {
3799               "$ref": "#/definitions/StatusHistoryRequests"
3800             },
3801             "Result": {
3802               "$ref": "#/definitions/StatusHistoryResults"
3803             }
3804           }
3805         },
3806         "WatchAll": {
3807           "type": "object",
3808           "properties": {
3809             "Result": {
3810               "$ref": "#/definitions/AllWatcherId"
3811             }
3812           }
3813         }
3814       },
3815       "definitions": {
3816         "APIHostPortsResult": {
3817           "type": "object",
3818           "properties": {
3819             "Servers": {
3820               "type": "array",
3821               "items": {
3822                 "type": "array",
3823                 "items": {
3824                   "$ref": "#/definitions/HostPort"
3825                 }
3826               }
3827             }
3828           },
3829           "additionalProperties": false,
3830           "required": [
3831             "Servers"
3832           ]
3833         },
3834         "AddCharm": {
3835           "type": "object",
3836           "properties": {
3837             "Channel": {
3838               "type": "string"
3839             },
3840             "URL": {
3841               "type": "string"
3842             }
3843           },
3844           "additionalProperties": false,
3845           "required": [
3846             "URL",
3847             "Channel"
3848           ]
3849         },
3850         "AddCharmWithAuthorization": {
3851           "type": "object",
3852           "properties": {
3853             "Channel": {
3854               "type": "string"
3855             },
3856             "CharmStoreMacaroon": {
3857               "$ref": "#/definitions/Macaroon"
3858             },
3859             "URL": {
3860               "type": "string"
3861             }
3862           },
3863           "additionalProperties": false,
3864           "required": [
3865             "URL",
3866             "Channel",
3867             "CharmStoreMacaroon"
3868           ]
3869         },
3870         "AddMachineParams": {
3871           "type": "object",
3872           "properties": {
3873             "Addrs": {
3874               "type": "array",
3875               "items": {
3876                 "$ref": "#/definitions/Address"
3877               }
3878             },
3879             "Constraints": {
3880               "$ref": "#/definitions/Value"
3881             },
3882             "ContainerType": {
3883               "type": "string"
3884             },
3885             "Disks": {
3886               "type": "array",
3887               "items": {
3888                 "$ref": "#/definitions/Constraints"
3889               }
3890             },
3891             "HardwareCharacteristics": {
3892               "$ref": "#/definitions/HardwareCharacteristics"
3893             },
3894             "InstanceId": {
3895               "type": "string"
3896             },
3897             "Jobs": {
3898               "type": "array",
3899               "items": {
3900                 "type": "string"
3901               }
3902             },
3903             "Nonce": {
3904               "type": "string"
3905             },
3906             "ParentId": {
3907               "type": "string"
3908             },
3909             "Placement": {
3910               "$ref": "#/definitions/Placement"
3911             },
3912             "Series": {
3913               "type": "string"
3914             }
3915           },
3916           "additionalProperties": false,
3917           "required": [
3918             "Series",
3919             "Constraints",
3920             "Jobs",
3921             "Disks",
3922             "Placement",
3923             "ParentId",
3924             "ContainerType",
3925             "InstanceId",
3926             "Nonce",
3927             "HardwareCharacteristics",
3928             "Addrs"
3929           ]
3930         },
3931         "AddMachines": {
3932           "type": "object",
3933           "properties": {
3934             "MachineParams": {
3935               "type": "array",
3936               "items": {
3937                 "$ref": "#/definitions/AddMachineParams"
3938               }
3939             }
3940           },
3941           "additionalProperties": false,
3942           "required": [
3943             "MachineParams"
3944           ]
3945         },
3946         "AddMachinesResult": {
3947           "type": "object",
3948           "properties": {
3949             "Error": {
3950               "$ref": "#/definitions/Error"
3951             },
3952             "Machine": {
3953               "type": "string"
3954             }
3955           },
3956           "additionalProperties": false,
3957           "required": [
3958             "Machine",
3959             "Error"
3960           ]
3961         },
3962         "AddMachinesResults": {
3963           "type": "object",
3964           "properties": {
3965             "Machines": {
3966               "type": "array",
3967               "items": {
3968                 "$ref": "#/definitions/AddMachinesResult"
3969               }
3970             }
3971           },
3972           "additionalProperties": false,
3973           "required": [
3974             "Machines"
3975           ]
3976         },
3977         "Address": {
3978           "type": "object",
3979           "properties": {
3980             "Scope": {
3981               "type": "string"
3982             },
3983             "SpaceName": {
3984               "type": "string"
3985             },
3986             "Type": {
3987               "type": "string"
3988             },
3989             "Value": {
3990               "type": "string"
3991             }
3992           },
3993           "additionalProperties": false,
3994           "required": [
3995             "Value",
3996             "Type",
3997             "Scope"
3998           ]
3999         },
4000         "AgentVersionResult": {
4001           "type": "object",
4002           "properties": {
4003             "Version": {
4004               "$ref": "#/definitions/Number"
4005             }
4006           },
4007           "additionalProperties": false,
4008           "required": [
4009             "Version"
4010           ]
4011         },
4012         "AllWatcherId": {
4013           "type": "object",
4014           "properties": {
4015             "AllWatcherId": {
4016               "type": "string"
4017             }
4018           },
4019           "additionalProperties": false,
4020           "required": [
4021             "AllWatcherId"
4022           ]
4023         },
4024         "ApplicationStatus": {
4025           "type": "object",
4026           "properties": {
4027             "CanUpgradeTo": {
4028               "type": "string"
4029             },
4030             "Charm": {
4031               "type": "string"
4032             },
4033             "Err": {
4034               "type": "object",
4035               "additionalProperties": true
4036             },
4037             "Exposed": {
4038               "type": "boolean"
4039             },
4040             "Life": {
4041               "type": "string"
4042             },
4043             "MeterStatuses": {
4044               "type": "object",
4045               "patternProperties": {
4046                 ".*": {
4047                   "$ref": "#/definitions/MeterStatus"
4048                 }
4049               }
4050             },
4051             "Relations": {
4052               "type": "object",
4053               "patternProperties": {
4054                 ".*": {
4055                   "type": "array",
4056                   "items": {
4057                     "type": "string"
4058                   }
4059                 }
4060               }
4061             },
4062             "Status": {
4063               "$ref": "#/definitions/DetailedStatus"
4064             },
4065             "SubordinateTo": {
4066               "type": "array",
4067               "items": {
4068                 "type": "string"
4069               }
4070             },
4071             "Units": {
4072               "type": "object",
4073               "patternProperties": {
4074                 ".*": {
4075                   "$ref": "#/definitions/UnitStatus"
4076                 }
4077               }
4078             }
4079           },
4080           "additionalProperties": false,
4081           "required": [
4082             "Err",
4083             "Charm",
4084             "Exposed",
4085             "Life",
4086             "Relations",
4087             "CanUpgradeTo",
4088             "SubordinateTo",
4089             "Units",
4090             "MeterStatuses",
4091             "Status"
4092           ]
4093         },
4094         "Binary": {
4095           "type": "object",
4096           "properties": {
4097             "Arch": {
4098               "type": "string"
4099             },
4100             "Number": {
4101               "$ref": "#/definitions/Number"
4102             },
4103             "Series": {
4104               "type": "string"
4105             }
4106           },
4107           "additionalProperties": false,
4108           "required": [
4109             "Number",
4110             "Series",
4111             "Arch"
4112           ]
4113         },
4114         "BundleChangesChange": {
4115           "type": "object",
4116           "properties": {
4117             "args": {
4118               "type": "array",
4119               "items": {
4120                 "type": "object",
4121                 "additionalProperties": true
4122               }
4123             },
4124             "id": {
4125               "type": "string"
4126             },
4127             "method": {
4128               "type": "string"
4129             },
4130             "requires": {
4131               "type": "array",
4132               "items": {
4133                 "type": "string"
4134               }
4135             }
4136           },
4137           "additionalProperties": false,
4138           "required": [
4139             "id",
4140             "method",
4141             "args",
4142             "requires"
4143           ]
4144         },
4145         "CharmInfo": {
4146           "type": "object",
4147           "properties": {
4148             "CharmURL": {
4149               "type": "string"
4150             }
4151           },
4152           "additionalProperties": false,
4153           "required": [
4154             "CharmURL"
4155           ]
4156         },
4157         "Constraints": {
4158           "type": "object",
4159           "properties": {
4160             "Count": {
4161               "type": "integer"
4162             },
4163             "Pool": {
4164               "type": "string"
4165             },
4166             "Size": {
4167               "type": "integer"
4168             }
4169           },
4170           "additionalProperties": false,
4171           "required": [
4172             "Pool",
4173             "Size",
4174             "Count"
4175           ]
4176         },
4177         "DestroyMachines": {
4178           "type": "object",
4179           "properties": {
4180             "Force": {
4181               "type": "boolean"
4182             },
4183             "MachineNames": {
4184               "type": "array",
4185               "items": {
4186                 "type": "string"
4187               }
4188             }
4189           },
4190           "additionalProperties": false,
4191           "required": [
4192             "MachineNames",
4193             "Force"
4194           ]
4195         },
4196         "DetailedStatus": {
4197           "type": "object",
4198           "properties": {
4199             "Data": {
4200               "type": "object",
4201               "patternProperties": {
4202                 ".*": {
4203                   "type": "object",
4204                   "additionalProperties": true
4205                 }
4206               }
4207             },
4208             "Err": {
4209               "type": "object",
4210               "additionalProperties": true
4211             },
4212             "Info": {
4213               "type": "string"
4214             },
4215             "Kind": {
4216               "type": "string"
4217             },
4218             "Life": {
4219               "type": "string"
4220             },
4221             "Since": {
4222               "type": "string",
4223               "format": "date-time"
4224             },
4225             "Status": {
4226               "type": "string"
4227             },
4228             "Version": {
4229               "type": "string"
4230             }
4231           },
4232           "additionalProperties": false,
4233           "required": [
4234             "Status",
4235             "Info",
4236             "Data",
4237             "Since",
4238             "Kind",
4239             "Version",
4240             "Life",
4241             "Err"
4242           ]
4243         },
4244         "EndpointStatus": {
4245           "type": "object",
4246           "properties": {
4247             "ApplicationName": {
4248               "type": "string"
4249             },
4250             "Name": {
4251               "type": "string"
4252             },
4253             "Role": {
4254               "type": "string"
4255             },
4256             "Subordinate": {
4257               "type": "boolean"
4258             }
4259           },
4260           "additionalProperties": false,
4261           "required": [
4262             "ApplicationName",
4263             "Name",
4264             "Role",
4265             "Subordinate"
4266           ]
4267         },
4268         "Entities": {
4269           "type": "object",
4270           "properties": {
4271             "Entities": {
4272               "type": "array",
4273               "items": {
4274                 "$ref": "#/definitions/Entity"
4275               }
4276             }
4277           },
4278           "additionalProperties": false,
4279           "required": [
4280             "Entities"
4281           ]
4282         },
4283         "Entity": {
4284           "type": "object",
4285           "properties": {
4286             "Tag": {
4287               "type": "string"
4288             }
4289           },
4290           "additionalProperties": false,
4291           "required": [
4292             "Tag"
4293           ]
4294         },
4295         "EntityStatus": {
4296           "type": "object",
4297           "properties": {
4298             "Data": {
4299               "type": "object",
4300               "patternProperties": {
4301                 ".*": {
4302                   "type": "object",
4303                   "additionalProperties": true
4304                 }
4305               }
4306             },
4307             "Info": {
4308               "type": "string"
4309             },
4310             "Since": {
4311               "type": "string",
4312               "format": "date-time"
4313             },
4314             "Status": {
4315               "type": "string"
4316             }
4317           },
4318           "additionalProperties": false,
4319           "required": [
4320             "Status",
4321             "Info",
4322             "Data",
4323             "Since"
4324           ]
4325         },
4326         "Error": {
4327           "type": "object",
4328           "properties": {
4329             "Code": {
4330               "type": "string"
4331             },
4332             "Info": {
4333               "$ref": "#/definitions/ErrorInfo"
4334             },
4335             "Message": {
4336               "type": "string"
4337             }
4338           },
4339           "additionalProperties": false,
4340           "required": [
4341             "Message",
4342             "Code"
4343           ]
4344         },
4345         "ErrorInfo": {
4346           "type": "object",
4347           "properties": {
4348             "Macaroon": {
4349               "$ref": "#/definitions/Macaroon"
4350             },
4351             "MacaroonPath": {
4352               "type": "string"
4353             }
4354           },
4355           "additionalProperties": false
4356         },
4357         "ErrorResult": {
4358           "type": "object",
4359           "properties": {
4360             "Error": {
4361               "$ref": "#/definitions/Error"
4362             }
4363           },
4364           "additionalProperties": false,
4365           "required": [
4366             "Error"
4367           ]
4368         },
4369         "ErrorResults": {
4370           "type": "object",
4371           "properties": {
4372             "Results": {
4373               "type": "array",
4374               "items": {
4375                 "$ref": "#/definitions/ErrorResult"
4376               }
4377             }
4378           },
4379           "additionalProperties": false,
4380           "required": [
4381             "Results"
4382           ]
4383         },
4384         "FindToolsParams": {
4385           "type": "object",
4386           "properties": {
4387             "Arch": {
4388               "type": "string"
4389             },
4390             "MajorVersion": {
4391               "type": "integer"
4392             },
4393             "MinorVersion": {
4394               "type": "integer"
4395             },
4396             "Number": {
4397               "$ref": "#/definitions/Number"
4398             },
4399             "Series": {
4400               "type": "string"
4401             }
4402           },
4403           "additionalProperties": false,
4404           "required": [
4405             "Number",
4406             "MajorVersion",
4407             "MinorVersion",
4408             "Arch",
4409             "Series"
4410           ]
4411         },
4412         "FindToolsResult": {
4413           "type": "object",
4414           "properties": {
4415             "Error": {
4416               "$ref": "#/definitions/Error"
4417             },
4418             "List": {
4419               "type": "array",
4420               "items": {
4421                 "$ref": "#/definitions/Tools"
4422               }
4423             }
4424           },
4425           "additionalProperties": false,
4426           "required": [
4427             "List",
4428             "Error"
4429           ]
4430         },
4431         "FullStatus": {
4432           "type": "object",
4433           "properties": {
4434             "Applications": {
4435               "type": "object",
4436               "patternProperties": {
4437                 ".*": {
4438                   "$ref": "#/definitions/ApplicationStatus"
4439                 }
4440               }
4441             },
4442             "AvailableVersion": {
4443               "type": "string"
4444             },
4445             "Machines": {
4446               "type": "object",
4447               "patternProperties": {
4448                 ".*": {
4449                   "$ref": "#/definitions/MachineStatus"
4450                 }
4451               }
4452             },
4453             "ModelName": {
4454               "type": "string"
4455             },
4456             "Relations": {
4457               "type": "array",
4458               "items": {
4459                 "$ref": "#/definitions/RelationStatus"
4460               }
4461             }
4462           },
4463           "additionalProperties": false,
4464           "required": [
4465             "ModelName",
4466             "AvailableVersion",
4467             "Machines",
4468             "Applications",
4469             "Relations"
4470           ]
4471         },
4472         "GetBundleChangesParams": {
4473           "type": "object",
4474           "properties": {
4475             "yaml": {
4476               "type": "string"
4477             }
4478           },
4479           "additionalProperties": false,
4480           "required": [
4481             "yaml"
4482           ]
4483         },
4484         "GetBundleChangesResults": {
4485           "type": "object",
4486           "properties": {
4487             "changes": {
4488               "type": "array",
4489               "items": {
4490                 "$ref": "#/definitions/BundleChangesChange"
4491               }
4492             },
4493             "errors": {
4494               "type": "array",
4495               "items": {
4496                 "type": "string"
4497               }
4498             }
4499           },
4500           "additionalProperties": false
4501         },
4502         "GetConstraintsResults": {
4503           "type": "object",
4504           "properties": {
4505             "Constraints": {
4506               "$ref": "#/definitions/Value"
4507             }
4508           },
4509           "additionalProperties": false,
4510           "required": [
4511             "Constraints"
4512           ]
4513         },
4514         "HardwareCharacteristics": {
4515           "type": "object",
4516           "properties": {
4517             "Arch": {
4518               "type": "string"
4519             },
4520             "AvailabilityZone": {
4521               "type": "string"
4522             },
4523             "CpuCores": {
4524               "type": "integer"
4525             },
4526             "CpuPower": {
4527               "type": "integer"
4528             },
4529             "Mem": {
4530               "type": "integer"
4531             },
4532             "RootDisk": {
4533               "type": "integer"
4534             },
4535             "Tags": {
4536               "type": "array",
4537               "items": {
4538                 "type": "string"
4539               }
4540             }
4541           },
4542           "additionalProperties": false
4543         },
4544         "History": {
4545           "type": "object",
4546           "properties": {
4547             "Error": {
4548               "$ref": "#/definitions/Error"
4549             },
4550             "Statuses": {
4551               "type": "array",
4552               "items": {
4553                 "$ref": "#/definitions/DetailedStatus"
4554               }
4555             }
4556           },
4557           "additionalProperties": false,
4558           "required": [
4559             "Statuses"
4560           ]
4561         },
4562         "HostPort": {
4563           "type": "object",
4564           "properties": {
4565             "Address": {
4566               "$ref": "#/definitions/Address"
4567             },
4568             "Port": {
4569               "type": "integer"
4570             }
4571           },
4572           "additionalProperties": false,
4573           "required": [
4574             "Address",
4575             "Port"
4576           ]
4577         },
4578         "Macaroon": {
4579           "type": "object",
4580           "properties": {
4581             "caveats": {
4582               "type": "array",
4583               "items": {
4584                 "$ref": "#/definitions/caveat"
4585               }
4586             },
4587             "data": {
4588               "type": "array",
4589               "items": {
4590                 "type": "integer"
4591               }
4592             },
4593             "id": {
4594               "$ref": "#/definitions/packet"
4595             },
4596             "location": {
4597               "$ref": "#/definitions/packet"
4598             },
4599             "sig": {
4600               "type": "array",
4601               "items": {
4602                 "type": "integer"
4603               }
4604             }
4605           },
4606           "additionalProperties": false,
4607           "required": [
4608             "data",
4609             "location",
4610             "id",
4611             "caveats",
4612             "sig"
4613           ]
4614         },
4615         "MachineStatus": {
4616           "type": "object",
4617           "properties": {
4618             "AgentStatus": {
4619               "$ref": "#/definitions/DetailedStatus"
4620             },
4621             "Containers": {
4622               "type": "object",
4623               "patternProperties": {
4624                 ".*": {
4625                   "$ref": "#/definitions/MachineStatus"
4626                 }
4627               }
4628             },
4629             "DNSName": {
4630               "type": "string"
4631             },
4632             "Hardware": {
4633               "type": "string"
4634             },
4635             "HasVote": {
4636               "type": "boolean"
4637             },
4638             "Id": {
4639               "type": "string"
4640             },
4641             "InstanceId": {
4642               "type": "string"
4643             },
4644             "InstanceStatus": {
4645               "$ref": "#/definitions/DetailedStatus"
4646             },
4647             "Jobs": {
4648               "type": "array",
4649               "items": {
4650                 "type": "string"
4651               }
4652             },
4653             "Series": {
4654               "type": "string"
4655             },
4656             "WantsVote": {
4657               "type": "boolean"
4658             }
4659           },
4660           "additionalProperties": false,
4661           "required": [
4662             "AgentStatus",
4663             "InstanceStatus",
4664             "DNSName",
4665             "InstanceId",
4666             "Series",
4667             "Id",
4668             "Containers",
4669             "Hardware",
4670             "Jobs",
4671             "HasVote",
4672             "WantsVote"
4673           ]
4674         },
4675         "MeterStatus": {
4676           "type": "object",
4677           "properties": {
4678             "Color": {
4679               "type": "string"
4680             },
4681             "Message": {
4682               "type": "string"
4683             }
4684           },
4685           "additionalProperties": false,
4686           "required": [
4687             "Color",
4688             "Message"
4689           ]
4690         },
4691         "ModelConfigResults": {
4692           "type": "object",
4693           "properties": {
4694             "Config": {
4695               "type": "object",
4696               "patternProperties": {
4697                 ".*": {
4698                   "type": "object",
4699                   "additionalProperties": true
4700                 }
4701               }
4702             }
4703           },
4704           "additionalProperties": false,
4705           "required": [
4706             "Config"
4707           ]
4708         },
4709         "ModelInfo": {
4710           "type": "object",
4711           "properties": {
4712             "Cloud": {
4713               "type": "string"
4714             },
4715             "DefaultSeries": {
4716               "type": "string"
4717             },
4718             "Life": {
4719               "type": "string"
4720             },
4721             "Name": {
4722               "type": "string"
4723             },
4724             "OwnerTag": {
4725               "type": "string"
4726             },
4727             "ProviderType": {
4728               "type": "string"
4729             },
4730             "ServerUUID": {
4731               "type": "string"
4732             },
4733             "Status": {
4734               "$ref": "#/definitions/EntityStatus"
4735             },
4736             "UUID": {
4737               "type": "string"
4738             },
4739             "Users": {
4740               "type": "array",
4741               "items": {
4742                 "$ref": "#/definitions/ModelUserInfo"
4743               }
4744             }
4745           },
4746           "additionalProperties": false,
4747           "required": [
4748             "Name",
4749             "UUID",
4750             "ServerUUID",
4751             "ProviderType",
4752             "DefaultSeries",
4753             "Cloud",
4754             "OwnerTag",
4755             "Life",
4756             "Status",
4757             "Users"
4758           ]
4759         },
4760         "ModelSet": {
4761           "type": "object",
4762           "properties": {
4763             "Config": {
4764               "type": "object",
4765               "patternProperties": {
4766                 ".*": {
4767                   "type": "object",
4768                   "additionalProperties": true
4769                 }
4770               }
4771             }
4772           },
4773           "additionalProperties": false,
4774           "required": [
4775             "Config"
4776           ]
4777         },
4778         "ModelUnset": {
4779           "type": "object",
4780           "properties": {
4781             "Keys": {
4782               "type": "array",
4783               "items": {
4784                 "type": "string"
4785               }
4786             }
4787           },
4788           "additionalProperties": false,
4789           "required": [
4790             "Keys"
4791           ]
4792         },
4793         "ModelUserInfo": {
4794           "type": "object",
4795           "properties": {
4796             "access": {
4797               "type": "string"
4798             },
4799             "displayname": {
4800               "type": "string"
4801             },
4802             "lastconnection": {
4803               "type": "string",
4804               "format": "date-time"
4805             },
4806             "user": {
4807               "type": "string"
4808             }
4809           },
4810           "additionalProperties": false,
4811           "required": [
4812             "user",
4813             "displayname",
4814             "lastconnection",
4815             "access"
4816           ]
4817         },
4818         "ModelUserInfoResult": {
4819           "type": "object",
4820           "properties": {
4821             "error": {
4822               "$ref": "#/definitions/Error"
4823             },
4824             "result": {
4825               "$ref": "#/definitions/ModelUserInfo"
4826             }
4827           },
4828           "additionalProperties": false
4829         },
4830         "ModelUserInfoResults": {
4831           "type": "object",
4832           "properties": {
4833             "results": {
4834               "type": "array",
4835               "items": {
4836                 "$ref": "#/definitions/ModelUserInfoResult"
4837               }
4838             }
4839           },
4840           "additionalProperties": false,
4841           "required": [
4842             "results"
4843           ]
4844         },
4845         "Number": {
4846           "type": "object",
4847           "properties": {
4848             "Build": {
4849               "type": "integer"
4850             },
4851             "Major": {
4852               "type": "integer"
4853             },
4854             "Minor": {
4855               "type": "integer"
4856             },
4857             "Patch": {
4858               "type": "integer"
4859             },
4860             "Tag": {
4861               "type": "string"
4862             }
4863           },
4864           "additionalProperties": false,
4865           "required": [
4866             "Major",
4867             "Minor",
4868             "Tag",
4869             "Patch",
4870             "Build"
4871           ]
4872         },
4873         "Placement": {
4874           "type": "object",
4875           "properties": {
4876             "Directive": {
4877               "type": "string"
4878             },
4879             "Scope": {
4880               "type": "string"
4881             }
4882           },
4883           "additionalProperties": false,
4884           "required": [
4885             "Scope",
4886             "Directive"
4887           ]
4888         },
4889         "PrivateAddress": {
4890           "type": "object",
4891           "properties": {
4892             "Target": {
4893               "type": "string"
4894             }
4895           },
4896           "additionalProperties": false,
4897           "required": [
4898             "Target"
4899           ]
4900         },
4901         "PrivateAddressResults": {
4902           "type": "object",
4903           "properties": {
4904             "PrivateAddress": {
4905               "type": "string"
4906             }
4907           },
4908           "additionalProperties": false,
4909           "required": [
4910             "PrivateAddress"
4911           ]
4912         },
4913         "ProvisioningScriptParams": {
4914           "type": "object",
4915           "properties": {
4916             "DataDir": {
4917               "type": "string"
4918             },
4919             "DisablePackageCommands": {
4920               "type": "boolean"
4921             },
4922             "MachineId": {
4923               "type": "string"
4924             },
4925             "Nonce": {
4926               "type": "string"
4927             }
4928           },
4929           "additionalProperties": false,
4930           "required": [
4931             "MachineId",
4932             "Nonce",
4933             "DataDir",
4934             "DisablePackageCommands"
4935           ]
4936         },
4937         "ProvisioningScriptResult": {
4938           "type": "object",
4939           "properties": {
4940             "Script": {
4941               "type": "string"
4942             }
4943           },
4944           "additionalProperties": false,
4945           "required": [
4946             "Script"
4947           ]
4948         },
4949         "PublicAddress": {
4950           "type": "object",
4951           "properties": {
4952             "Target": {
4953               "type": "string"
4954             }
4955           },
4956           "additionalProperties": false,
4957           "required": [
4958             "Target"
4959           ]
4960         },
4961         "PublicAddressResults": {
4962           "type": "object",
4963           "properties": {
4964             "PublicAddress": {
4965               "type": "string"
4966             }
4967           },
4968           "additionalProperties": false,
4969           "required": [
4970             "PublicAddress"
4971           ]
4972         },
4973         "RelationStatus": {
4974           "type": "object",
4975           "properties": {
4976             "Endpoints": {
4977               "type": "array",
4978               "items": {
4979                 "$ref": "#/definitions/EndpointStatus"
4980               }
4981             },
4982             "Id": {
4983               "type": "integer"
4984             },
4985             "Interface": {
4986               "type": "string"
4987             },
4988             "Key": {
4989               "type": "string"
4990             },
4991             "Scope": {
4992               "type": "string"
4993             }
4994           },
4995           "additionalProperties": false,
4996           "required": [
4997             "Id",
4998             "Key",
4999             "Interface",
5000             "Scope",
5001             "Endpoints"
5002           ]
5003         },
5004         "ResolveCharmResult": {
5005           "type": "object",
5006           "properties": {
5007             "Error": {
5008               "type": "string"
5009             },
5010             "URL": {
5011               "$ref": "#/definitions/URL"
5012             }
5013           },
5014           "additionalProperties": false
5015         },
5016         "ResolveCharmResults": {
5017           "type": "object",
5018           "properties": {
5019             "URLs": {
5020               "type": "array",
5021               "items": {
5022                 "$ref": "#/definitions/ResolveCharmResult"
5023               }
5024             }
5025           },
5026           "additionalProperties": false,
5027           "required": [
5028             "URLs"
5029           ]
5030         },
5031         "ResolveCharms": {
5032           "type": "object",
5033           "properties": {
5034             "References": {
5035               "type": "array",
5036               "items": {
5037                 "$ref": "#/definitions/URL"
5038               }
5039             }
5040           },
5041           "additionalProperties": false,
5042           "required": [
5043             "References"
5044           ]
5045         },
5046         "Resolved": {
5047           "type": "object",
5048           "properties": {
5049             "Retry": {
5050               "type": "boolean"
5051             },
5052             "UnitName": {
5053               "type": "string"
5054             }
5055           },
5056           "additionalProperties": false,
5057           "required": [
5058             "UnitName",
5059             "Retry"
5060           ]
5061         },
5062         "SetConstraints": {
5063           "type": "object",
5064           "properties": {
5065             "ApplicationName": {
5066               "type": "string"
5067             },
5068             "Constraints": {
5069               "$ref": "#/definitions/Value"
5070             }
5071           },
5072           "additionalProperties": false,
5073           "required": [
5074             "ApplicationName",
5075             "Constraints"
5076           ]
5077         },
5078         "SetModelAgentVersion": {
5079           "type": "object",
5080           "properties": {
5081             "Version": {
5082               "$ref": "#/definitions/Number"
5083             }
5084           },
5085           "additionalProperties": false,
5086           "required": [
5087             "Version"
5088           ]
5089         },
5090         "StatusHistoryFilter": {
5091           "type": "object",
5092           "properties": {
5093             "Date": {
5094               "type": "string",
5095               "format": "date-time"
5096             },
5097             "Delta": {
5098               "type": "integer"
5099             },
5100             "Size": {
5101               "type": "integer"
5102             }
5103           },
5104           "additionalProperties": false,
5105           "required": [
5106             "Size",
5107             "Date",
5108             "Delta"
5109           ]
5110         },
5111         "StatusHistoryRequest": {
5112           "type": "object",
5113           "properties": {
5114             "Filter": {
5115               "$ref": "#/definitions/StatusHistoryFilter"
5116             },
5117             "HistoryKind": {
5118               "type": "string"
5119             },
5120             "Size": {
5121               "type": "integer"
5122             },
5123             "Tag": {
5124               "type": "string"
5125             }
5126           },
5127           "additionalProperties": false,
5128           "required": [
5129             "HistoryKind",
5130             "Size",
5131             "Filter",
5132             "Tag"
5133           ]
5134         },
5135         "StatusHistoryRequests": {
5136           "type": "object",
5137           "properties": {
5138             "Requests": {
5139               "type": "array",
5140               "items": {
5141                 "$ref": "#/definitions/StatusHistoryRequest"
5142               }
5143             }
5144           },
5145           "additionalProperties": false,
5146           "required": [
5147             "Requests"
5148           ]
5149         },
5150         "StatusHistoryResult": {
5151           "type": "object",
5152           "properties": {
5153             "Error": {
5154               "$ref": "#/definitions/Error"
5155             },
5156             "History": {
5157               "$ref": "#/definitions/History"
5158             }
5159           },
5160           "additionalProperties": false,
5161           "required": [
5162             "History"
5163           ]
5164         },
5165         "StatusHistoryResults": {
5166           "type": "object",
5167           "properties": {
5168             "Results": {
5169               "type": "array",
5170               "items": {
5171                 "$ref": "#/definitions/StatusHistoryResult"
5172               }
5173             }
5174           },
5175           "additionalProperties": false,
5176           "required": [
5177             "Results"
5178           ]
5179         },
5180         "StatusParams": {
5181           "type": "object",
5182           "properties": {
5183             "Patterns": {
5184               "type": "array",
5185               "items": {
5186                 "type": "string"
5187               }
5188             }
5189           },
5190           "additionalProperties": false,
5191           "required": [
5192             "Patterns"
5193           ]
5194         },
5195         "Tools": {
5196           "type": "object",
5197           "properties": {
5198             "sha256": {
5199               "type": "string"
5200             },
5201             "size": {
5202               "type": "integer"
5203             },
5204             "url": {
5205               "type": "string"
5206             },
5207             "version": {
5208               "$ref": "#/definitions/Binary"
5209             }
5210           },
5211           "additionalProperties": false,
5212           "required": [
5213             "version",
5214             "url",
5215             "size"
5216           ]
5217         },
5218         "URL": {
5219           "type": "object",
5220           "properties": {
5221             "Channel": {
5222               "type": "string"
5223             },
5224             "Name": {
5225               "type": "string"
5226             },
5227             "Revision": {
5228               "type": "integer"
5229             },
5230             "Schema": {
5231               "type": "string"
5232             },
5233             "Series": {
5234               "type": "string"
5235             },
5236             "User": {
5237               "type": "string"
5238             }
5239           },
5240           "additionalProperties": false,
5241           "required": [
5242             "Schema",
5243             "User",
5244             "Name",
5245             "Revision",
5246             "Series",
5247             "Channel"
5248           ]
5249         },
5250         "UnitStatus": {
5251           "type": "object",
5252           "properties": {
5253             "AgentStatus": {
5254               "$ref": "#/definitions/DetailedStatus"
5255             },
5256             "Charm": {
5257               "type": "string"
5258             },
5259             "Machine": {
5260               "type": "string"
5261             },
5262             "OpenedPorts": {
5263               "type": "array",
5264               "items": {
5265                 "type": "string"
5266               }
5267             },
5268             "PublicAddress": {
5269               "type": "string"
5270             },
5271             "Subordinates": {
5272               "type": "object",
5273               "patternProperties": {
5274                 ".*": {
5275                   "$ref": "#/definitions/UnitStatus"
5276                 }
5277               }
5278             },
5279             "WorkloadStatus": {
5280               "$ref": "#/definitions/DetailedStatus"
5281             }
5282           },
5283           "additionalProperties": false,
5284           "required": [
5285             "AgentStatus",
5286             "WorkloadStatus",
5287             "Machine",
5288             "OpenedPorts",
5289             "PublicAddress",
5290             "Charm",
5291             "Subordinates"
5292           ]
5293         },
5294         "Value": {
5295           "type": "object",
5296           "properties": {
5297             "arch": {
5298               "type": "string"
5299             },
5300             "container": {
5301               "type": "string"
5302             },
5303             "cpu-cores": {
5304               "type": "integer"
5305             },
5306             "cpu-power": {
5307               "type": "integer"
5308             },
5309             "instance-type": {
5310               "type": "string"
5311             },
5312             "mem": {
5313               "type": "integer"
5314             },
5315             "root-disk": {
5316               "type": "integer"
5317             },
5318             "spaces": {
5319               "type": "array",
5320               "items": {
5321                 "type": "string"
5322               }
5323             },
5324             "tags": {
5325               "type": "array",
5326               "items": {
5327                 "type": "string"
5328               }
5329             },
5330             "virt-type": {
5331               "type": "string"
5332             }
5333           },
5334           "additionalProperties": false
5335         },
5336         "caveat": {
5337           "type": "object",
5338           "properties": {
5339             "caveatId": {
5340               "$ref": "#/definitions/packet"
5341             },
5342             "location": {
5343               "$ref": "#/definitions/packet"
5344             },
5345             "verificationId": {
5346               "$ref": "#/definitions/packet"
5347             }
5348           },
5349           "additionalProperties": false,
5350           "required": [
5351             "location",
5352             "caveatId",
5353             "verificationId"
5354           ]
5355         },
5356         "packet": {
5357           "type": "object",
5358           "properties": {
5359             "headerLen": {
5360               "type": "integer"
5361             },
5362             "start": {
5363               "type": "integer"
5364             },
5365             "totalLen": {
5366               "type": "integer"
5367             }
5368           },
5369           "additionalProperties": false,
5370           "required": [
5371             "start",
5372             "totalLen",
5373             "headerLen"
5374           ]
5375         }
5376       }
5377     }
5378   },
5379   {
5380     "Name": "Controller",
5381     "Version": 3,
5382     "Schema": {
5383       "type": "object",
5384       "properties": {
5385         "AllModels": {
5386           "type": "object",
5387           "properties": {
5388             "Result": {
5389               "$ref": "#/definitions/UserModelList"
5390             }
5391           }
5392         },
5393         "DestroyController": {
5394           "type": "object",
5395           "properties": {
5396             "Params": {
5397               "$ref": "#/definitions/DestroyControllerArgs"
5398             }
5399           }
5400         },
5401         "InitiateModelMigration": {
5402           "type": "object",
5403           "properties": {
5404             "Params": {
5405               "$ref": "#/definitions/InitiateModelMigrationArgs"
5406             },
5407             "Result": {
5408               "$ref": "#/definitions/InitiateModelMigrationResults"
5409             }
5410           }
5411         },
5412         "ListBlockedModels": {
5413           "type": "object",
5414           "properties": {
5415             "Result": {
5416               "$ref": "#/definitions/ModelBlockInfoList"
5417             }
5418           }
5419         },
5420         "ModelConfig": {
5421           "type": "object",
5422           "properties": {
5423             "Result": {
5424               "$ref": "#/definitions/ModelConfigResults"
5425             }
5426           }
5427         },
5428         "ModelStatus": {
5429           "type": "object",
5430           "properties": {
5431             "Params": {
5432               "$ref": "#/definitions/Entities"
5433             },
5434             "Result": {
5435               "$ref": "#/definitions/ModelStatusResults"
5436             }
5437           }
5438         },
5439         "RemoveBlocks": {
5440           "type": "object",
5441           "properties": {
5442             "Params": {
5443               "$ref": "#/definitions/RemoveBlocksArgs"
5444             }
5445           }
5446         },
5447         "WatchAllModels": {
5448           "type": "object",
5449           "properties": {
5450             "Result": {
5451               "$ref": "#/definitions/AllWatcherId"
5452             }
5453           }
5454         }
5455       },
5456       "definitions": {
5457         "AllWatcherId": {
5458           "type": "object",
5459           "properties": {
5460             "AllWatcherId": {
5461               "type": "string"
5462             }
5463           },
5464           "additionalProperties": false,
5465           "required": [
5466             "AllWatcherId"
5467           ]
5468         },
5469         "DestroyControllerArgs": {
5470           "type": "object",
5471           "properties": {
5472             "destroy-models": {
5473               "type": "boolean"
5474             }
5475           },
5476           "additionalProperties": false,
5477           "required": [
5478             "destroy-models"
5479           ]
5480         },
5481         "Entities": {
5482           "type": "object",
5483           "properties": {
5484             "Entities": {
5485               "type": "array",
5486               "items": {
5487                 "$ref": "#/definitions/Entity"
5488               }
5489             }
5490           },
5491           "additionalProperties": false,
5492           "required": [
5493             "Entities"
5494           ]
5495         },
5496         "Entity": {
5497           "type": "object",
5498           "properties": {
5499             "Tag": {
5500               "type": "string"
5501             }
5502           },
5503           "additionalProperties": false,
5504           "required": [
5505             "Tag"
5506           ]
5507         },
5508         "Error": {
5509           "type": "object",
5510           "properties": {
5511             "Code": {
5512               "type": "string"
5513             },
5514             "Info": {
5515               "$ref": "#/definitions/ErrorInfo"
5516             },
5517             "Message": {
5518               "type": "string"
5519             }
5520           },
5521           "additionalProperties": false,
5522           "required": [
5523             "Message",
5524             "Code"
5525           ]
5526         },
5527         "ErrorInfo": {
5528           "type": "object",
5529           "properties": {
5530             "Macaroon": {
5531               "$ref": "#/definitions/Macaroon"
5532             },
5533             "MacaroonPath": {
5534               "type": "string"
5535             }
5536           },
5537           "additionalProperties": false
5538         },
5539         "InitiateModelMigrationArgs": {
5540           "type": "object",
5541           "properties": {
5542             "specs": {
5543               "type": "array",
5544               "items": {
5545                 "$ref": "#/definitions/ModelMigrationSpec"
5546               }
5547             }
5548           },
5549           "additionalProperties": false,
5550           "required": [
5551             "specs"
5552           ]
5553         },
5554         "InitiateModelMigrationResult": {
5555           "type": "object",
5556           "properties": {
5557             "error": {
5558               "$ref": "#/definitions/Error"
5559             },
5560             "id": {
5561               "type": "string"
5562             },
5563             "model-tag": {
5564               "type": "string"
5565             }
5566           },
5567           "additionalProperties": false,
5568           "required": [
5569             "model-tag",
5570             "error",
5571             "id"
5572           ]
5573         },
5574         "InitiateModelMigrationResults": {
5575           "type": "object",
5576           "properties": {
5577             "results": {
5578               "type": "array",
5579               "items": {
5580                 "$ref": "#/definitions/InitiateModelMigrationResult"
5581               }
5582             }
5583           },
5584           "additionalProperties": false,
5585           "required": [
5586             "results"
5587           ]
5588         },
5589         "Macaroon": {
5590           "type": "object",
5591           "properties": {
5592             "caveats": {
5593               "type": "array",
5594               "items": {
5595                 "$ref": "#/definitions/caveat"
5596               }
5597             },
5598             "data": {
5599               "type": "array",
5600               "items": {
5601                 "type": "integer"
5602               }
5603             },
5604             "id": {
5605               "$ref": "#/definitions/packet"
5606             },
5607             "location": {
5608               "$ref": "#/definitions/packet"
5609             },
5610             "sig": {
5611               "type": "array",
5612               "items": {
5613                 "type": "integer"
5614               }
5615             }
5616           },
5617           "additionalProperties": false,
5618           "required": [
5619             "data",
5620             "location",
5621             "id",
5622             "caveats",
5623             "sig"
5624           ]
5625         },
5626         "Model": {
5627           "type": "object",
5628           "properties": {
5629             "Name": {
5630               "type": "string"
5631             },
5632             "OwnerTag": {
5633               "type": "string"
5634             },
5635             "UUID": {
5636               "type": "string"
5637             }
5638           },
5639           "additionalProperties": false,
5640           "required": [
5641             "Name",
5642             "UUID",
5643             "OwnerTag"
5644           ]
5645         },
5646         "ModelBlockInfo": {
5647           "type": "object",
5648           "properties": {
5649             "blocks": {
5650               "type": "array",
5651               "items": {
5652                 "type": "string"
5653               }
5654             },
5655             "model-uuid": {
5656               "type": "string"
5657             },
5658             "name": {
5659               "type": "string"
5660             },
5661             "owner-tag": {
5662               "type": "string"
5663             }
5664           },
5665           "additionalProperties": false,
5666           "required": [
5667             "name",
5668             "model-uuid",
5669             "owner-tag",
5670             "blocks"
5671           ]
5672         },
5673         "ModelBlockInfoList": {
5674           "type": "object",
5675           "properties": {
5676             "models": {
5677               "type": "array",
5678               "items": {
5679                 "$ref": "#/definitions/ModelBlockInfo"
5680               }
5681             }
5682           },
5683           "additionalProperties": false
5684         },
5685         "ModelConfigResults": {
5686           "type": "object",
5687           "properties": {
5688             "Config": {
5689               "type": "object",
5690               "patternProperties": {
5691                 ".*": {
5692                   "type": "object",
5693                   "additionalProperties": true
5694                 }
5695               }
5696             }
5697           },
5698           "additionalProperties": false,
5699           "required": [
5700             "Config"
5701           ]
5702         },
5703         "ModelMigrationSpec": {
5704           "type": "object",
5705           "properties": {
5706             "model-tag": {
5707               "type": "string"
5708             },
5709             "target-info": {
5710               "$ref": "#/definitions/ModelMigrationTargetInfo"
5711             }
5712           },
5713           "additionalProperties": false,
5714           "required": [
5715             "model-tag",
5716             "target-info"
5717           ]
5718         },
5719         "ModelMigrationTargetInfo": {
5720           "type": "object",
5721           "properties": {
5722             "addrs": {
5723               "type": "array",
5724               "items": {
5725                 "type": "string"
5726               }
5727             },
5728             "auth-tag": {
5729               "type": "string"
5730             },
5731             "ca-cert": {
5732               "type": "string"
5733             },
5734             "controller-tag": {
5735               "type": "string"
5736             },
5737             "password": {
5738               "type": "string"
5739             }
5740           },
5741           "additionalProperties": false,
5742           "required": [
5743             "controller-tag",
5744             "addrs",
5745             "ca-cert",
5746             "auth-tag",
5747             "password"
5748           ]
5749         },
5750         "ModelStatus": {
5751           "type": "object",
5752           "properties": {
5753             "application-count": {
5754               "type": "integer"
5755             },
5756             "hosted-machine-count": {
5757               "type": "integer"
5758             },
5759             "life": {
5760               "type": "string"
5761             },
5762             "model-tag": {
5763               "type": "string"
5764             },
5765             "owner-tag": {
5766               "type": "string"
5767             }
5768           },
5769           "additionalProperties": false,
5770           "required": [
5771             "model-tag",
5772             "life",
5773             "hosted-machine-count",
5774             "application-count",
5775             "owner-tag"
5776           ]
5777         },
5778         "ModelStatusResults": {
5779           "type": "object",
5780           "properties": {
5781             "models": {
5782               "type": "array",
5783               "items": {
5784                 "$ref": "#/definitions/ModelStatus"
5785               }
5786             }
5787           },
5788           "additionalProperties": false,
5789           "required": [
5790             "models"
5791           ]
5792         },
5793         "RemoveBlocksArgs": {
5794           "type": "object",
5795           "properties": {
5796             "all": {
5797               "type": "boolean"
5798             }
5799           },
5800           "additionalProperties": false,
5801           "required": [
5802             "all"
5803           ]
5804         },
5805         "UserModel": {
5806           "type": "object",
5807           "properties": {
5808             "LastConnection": {
5809               "type": "string",
5810               "format": "date-time"
5811             },
5812             "Model": {
5813               "$ref": "#/definitions/Model"
5814             }
5815           },
5816           "additionalProperties": false,
5817           "required": [
5818             "Model",
5819             "LastConnection"
5820           ]
5821         },
5822         "UserModelList": {
5823           "type": "object",
5824           "properties": {
5825             "UserModels": {
5826               "type": "array",
5827               "items": {
5828                 "$ref": "#/definitions/UserModel"
5829               }
5830             }
5831           },
5832           "additionalProperties": false,
5833           "required": [
5834             "UserModels"
5835           ]
5836         },
5837         "caveat": {
5838           "type": "object",
5839           "properties": {
5840             "caveatId": {
5841               "$ref": "#/definitions/packet"
5842             },
5843             "location": {
5844               "$ref": "#/definitions/packet"
5845             },
5846             "verificationId": {
5847               "$ref": "#/definitions/packet"
5848             }
5849           },
5850           "additionalProperties": false,
5851           "required": [
5852             "location",
5853             "caveatId",
5854             "verificationId"
5855           ]
5856         },
5857         "packet": {
5858           "type": "object",
5859           "properties": {
5860             "headerLen": {
5861               "type": "integer"
5862             },
5863             "start": {
5864               "type": "integer"
5865             },
5866             "totalLen": {
5867               "type": "integer"
5868             }
5869           },
5870           "additionalProperties": false,
5871           "required": [
5872             "start",
5873             "totalLen",
5874             "headerLen"
5875           ]
5876         }
5877       }
5878     }
5879   },
5880   {
5881     "Name": "Deployer",
5882     "Version": 1,
5883     "Schema": {
5884       "type": "object",
5885       "properties": {
5886         "APIAddresses": {
5887           "type": "object",
5888           "properties": {
5889             "Result": {
5890               "$ref": "#/definitions/StringsResult"
5891             }
5892           }
5893         },
5894         "APIHostPorts": {
5895           "type": "object",
5896           "properties": {
5897             "Result": {
5898               "$ref": "#/definitions/APIHostPortsResult"
5899             }
5900           }
5901         },
5902         "CACert": {
5903           "type": "object",
5904           "properties": {
5905             "Result": {
5906               "$ref": "#/definitions/BytesResult"
5907             }
5908           }
5909         },
5910         "ConnectionInfo": {
5911           "type": "object",
5912           "properties": {
5913             "Result": {
5914               "$ref": "#/definitions/DeployerConnectionValues"
5915             }
5916           }
5917         },
5918         "Life": {
5919           "type": "object",
5920           "properties": {
5921             "Params": {
5922               "$ref": "#/definitions/Entities"
5923             },
5924             "Result": {
5925               "$ref": "#/definitions/LifeResults"
5926             }
5927           }
5928         },
5929         "ModelUUID": {
5930           "type": "object",
5931           "properties": {
5932             "Result": {
5933               "$ref": "#/definitions/StringResult"
5934             }
5935           }
5936         },
5937         "Remove": {
5938           "type": "object",
5939           "properties": {
5940             "Params": {
5941               "$ref": "#/definitions/Entities"
5942             },
5943             "Result": {
5944               "$ref": "#/definitions/ErrorResults"
5945             }
5946           }
5947         },
5948         "SetPasswords": {
5949           "type": "object",
5950           "properties": {
5951             "Params": {
5952               "$ref": "#/definitions/EntityPasswords"
5953             },
5954             "Result": {
5955               "$ref": "#/definitions/ErrorResults"
5956             }
5957           }
5958         },
5959         "StateAddresses": {
5960           "type": "object",
5961           "properties": {
5962             "Result": {
5963               "$ref": "#/definitions/StringsResult"
5964             }
5965           }
5966         },
5967         "WatchAPIHostPorts": {
5968           "type": "object",
5969           "properties": {
5970             "Result": {
5971               "$ref": "#/definitions/NotifyWatchResult"
5972             }
5973           }
5974         },
5975         "WatchUnits": {
5976           "type": "object",
5977           "properties": {
5978             "Params": {
5979               "$ref": "#/definitions/Entities"
5980             },
5981             "Result": {
5982               "$ref": "#/definitions/StringsWatchResults"
5983             }
5984           }
5985         }
5986       },
5987       "definitions": {
5988         "APIHostPortsResult": {
5989           "type": "object",
5990           "properties": {
5991             "Servers": {
5992               "type": "array",
5993               "items": {
5994                 "type": "array",
5995                 "items": {
5996                   "$ref": "#/definitions/HostPort"
5997                 }
5998               }
5999             }
6000           },
6001           "additionalProperties": false,
6002           "required": [
6003             "Servers"
6004           ]
6005         },
6006         "Address": {
6007           "type": "object",
6008           "properties": {
6009             "Scope": {
6010               "type": "string"
6011             },
6012             "SpaceName": {
6013               "type": "string"
6014             },
6015             "Type": {
6016               "type": "string"
6017             },
6018             "Value": {
6019               "type": "string"
6020             }
6021           },
6022           "additionalProperties": false,
6023           "required": [
6024             "Value",
6025             "Type",
6026             "Scope"
6027           ]
6028         },
6029         "BytesResult": {
6030           "type": "object",
6031           "properties": {
6032             "Result": {
6033               "type": "array",
6034               "items": {
6035                 "type": "integer"
6036               }
6037             }
6038           },
6039           "additionalProperties": false,
6040           "required": [
6041             "Result"
6042           ]
6043         },
6044         "DeployerConnectionValues": {
6045           "type": "object",
6046           "properties": {
6047             "APIAddresses": {
6048               "type": "array",
6049               "items": {
6050                 "type": "string"
6051               }
6052             },
6053             "StateAddresses": {
6054               "type": "array",
6055               "items": {
6056                 "type": "string"
6057               }
6058             }
6059           },
6060           "additionalProperties": false,
6061           "required": [
6062             "StateAddresses",
6063             "APIAddresses"
6064           ]
6065         },
6066         "Entities": {
6067           "type": "object",
6068           "properties": {
6069             "Entities": {
6070               "type": "array",
6071               "items": {
6072                 "$ref": "#/definitions/Entity"
6073               }
6074             }
6075           },
6076           "additionalProperties": false,
6077           "required": [
6078             "Entities"
6079           ]
6080         },
6081         "Entity": {
6082           "type": "object",
6083           "properties": {
6084             "Tag": {
6085               "type": "string"
6086             }
6087           },
6088           "additionalProperties": false,
6089           "required": [
6090             "Tag"
6091           ]
6092         },
6093         "EntityPassword": {
6094           "type": "object",
6095           "properties": {
6096             "Password": {
6097               "type": "string"
6098             },
6099             "Tag": {
6100               "type": "string"
6101             }
6102           },
6103           "additionalProperties": false,
6104           "required": [
6105             "Tag",
6106             "Password"
6107           ]
6108         },
6109         "EntityPasswords": {
6110           "type": "object",
6111           "properties": {
6112             "Changes": {
6113               "type": "array",
6114               "items": {
6115                 "$ref": "#/definitions/EntityPassword"
6116               }
6117             }
6118           },
6119           "additionalProperties": false,
6120           "required": [
6121             "Changes"
6122           ]
6123         },
6124         "Error": {
6125           "type": "object",
6126           "properties": {
6127             "Code": {
6128               "type": "string"
6129             },
6130             "Info": {
6131               "$ref": "#/definitions/ErrorInfo"
6132             },
6133             "Message": {
6134               "type": "string"
6135             }
6136           },
6137           "additionalProperties": false,
6138           "required": [
6139             "Message",
6140             "Code"
6141           ]
6142         },
6143         "ErrorInfo": {
6144           "type": "object",
6145           "properties": {
6146             "Macaroon": {
6147               "$ref": "#/definitions/Macaroon"
6148             },
6149             "MacaroonPath": {
6150               "type": "string"
6151             }
6152           },
6153           "additionalProperties": false
6154         },
6155         "ErrorResult": {
6156           "type": "object",
6157           "properties": {
6158             "Error": {
6159               "$ref": "#/definitions/Error"
6160             }
6161           },
6162           "additionalProperties": false,
6163           "required": [
6164             "Error"
6165           ]
6166         },
6167         "ErrorResults": {
6168           "type": "object",
6169           "properties": {
6170             "Results": {
6171               "type": "array",
6172               "items": {
6173                 "$ref": "#/definitions/ErrorResult"
6174               }
6175             }
6176           },
6177           "additionalProperties": false,
6178           "required": [
6179             "Results"
6180           ]
6181         },
6182         "HostPort": {
6183           "type": "object",
6184           "properties": {
6185             "Address": {
6186               "$ref": "#/definitions/Address"
6187             },
6188             "Port": {
6189               "type": "integer"
6190             }
6191           },
6192           "additionalProperties": false,
6193           "required": [
6194             "Address",
6195             "Port"
6196           ]
6197         },
6198         "LifeResult": {
6199           "type": "object",
6200           "properties": {
6201             "Error": {
6202               "$ref": "#/definitions/Error"
6203             },
6204             "Life": {
6205               "type": "string"
6206             }
6207           },
6208           "additionalProperties": false,
6209           "required": [
6210             "Life",
6211             "Error"
6212           ]
6213         },
6214         "LifeResults": {
6215           "type": "object",
6216           "properties": {
6217             "Results": {
6218               "type": "array",
6219               "items": {
6220                 "$ref": "#/definitions/LifeResult"
6221               }
6222             }
6223           },
6224           "additionalProperties": false,
6225           "required": [
6226             "Results"
6227           ]
6228         },
6229         "Macaroon": {
6230           "type": "object",
6231           "properties": {
6232             "caveats": {
6233               "type": "array",
6234               "items": {
6235                 "$ref": "#/definitions/caveat"
6236               }
6237             },
6238             "data": {
6239               "type": "array",
6240               "items": {
6241                 "type": "integer"
6242               }
6243             },
6244             "id": {
6245               "$ref": "#/definitions/packet"
6246             },
6247             "location": {
6248               "$ref": "#/definitions/packet"
6249             },
6250             "sig": {
6251               "type": "array",
6252               "items": {
6253                 "type": "integer"
6254               }
6255             }
6256           },
6257           "additionalProperties": false,
6258           "required": [
6259             "data",
6260             "location",
6261             "id",
6262             "caveats",
6263             "sig"
6264           ]
6265         },
6266         "NotifyWatchResult": {
6267           "type": "object",
6268           "properties": {
6269             "Error": {
6270               "$ref": "#/definitions/Error"
6271             },
6272             "NotifyWatcherId": {
6273               "type": "string"
6274             }
6275           },
6276           "additionalProperties": false,
6277           "required": [
6278             "NotifyWatcherId",
6279             "Error"
6280           ]
6281         },
6282         "StringResult": {
6283           "type": "object",
6284           "properties": {
6285             "Error": {
6286               "$ref": "#/definitions/Error"
6287             },
6288             "Result": {
6289               "type": "string"
6290             }
6291           },
6292           "additionalProperties": false,
6293           "required": [
6294             "Error",
6295             "Result"
6296           ]
6297         },
6298         "StringsResult": {
6299           "type": "object",
6300           "properties": {
6301             "Error": {
6302               "$ref": "#/definitions/Error"
6303             },
6304             "Result": {
6305               "type": "array",
6306               "items": {
6307                 "type": "string"
6308               }
6309             }
6310           },
6311           "additionalProperties": false,
6312           "required": [
6313             "Error",
6314             "Result"
6315           ]
6316         },
6317         "StringsWatchResult": {
6318           "type": "object",
6319           "properties": {
6320             "Changes": {
6321               "type": "array",
6322               "items": {
6323                 "type": "string"
6324               }
6325             },
6326             "Error": {
6327               "$ref": "#/definitions/Error"
6328             },
6329             "StringsWatcherId": {
6330               "type": "string"
6331             }
6332           },
6333           "additionalProperties": false,
6334           "required": [
6335             "StringsWatcherId",
6336             "Changes",
6337             "Error"
6338           ]
6339         },
6340         "StringsWatchResults": {
6341           "type": "object",
6342           "properties": {
6343             "Results": {
6344               "type": "array",
6345               "items": {
6346                 "$ref": "#/definitions/StringsWatchResult"
6347               }
6348             }
6349           },
6350           "additionalProperties": false,
6351           "required": [
6352             "Results"
6353           ]
6354         },
6355         "caveat": {
6356           "type": "object",
6357           "properties": {
6358             "caveatId": {
6359               "$ref": "#/definitions/packet"
6360             },
6361             "location": {
6362               "$ref": "#/definitions/packet"
6363             },
6364             "verificationId": {
6365               "$ref": "#/definitions/packet"
6366             }
6367           },
6368           "additionalProperties": false,
6369           "required": [
6370             "location",
6371             "caveatId",
6372             "verificationId"
6373           ]
6374         },
6375         "packet": {
6376           "type": "object",
6377           "properties": {
6378             "headerLen": {
6379               "type": "integer"
6380             },
6381             "start": {
6382               "type": "integer"
6383             },
6384             "totalLen": {
6385               "type": "integer"
6386             }
6387           },
6388           "additionalProperties": false,
6389           "required": [
6390             "start",
6391             "totalLen",
6392             "headerLen"
6393           ]
6394         }
6395       }
6396     }
6397   },
6398   {
6399     "Name": "DiscoverSpaces",
6400     "Version": 2,
6401     "Schema": {
6402       "type": "object",
6403       "properties": {
6404         "AddSubnets": {
6405           "type": "object",
6406           "properties": {
6407             "Params": {
6408               "$ref": "#/definitions/AddSubnetsParams"
6409             },
6410             "Result": {
6411               "$ref": "#/definitions/ErrorResults"
6412             }
6413           }
6414         },
6415         "CreateSpaces": {
6416           "type": "object",
6417           "properties": {
6418             "Params": {
6419               "$ref": "#/definitions/CreateSpacesParams"
6420             },
6421             "Result": {
6422               "$ref": "#/definitions/ErrorResults"
6423             }
6424           }
6425         },
6426         "ListSpaces": {
6427           "type": "object",
6428           "properties": {
6429             "Result": {
6430               "$ref": "#/definitions/DiscoverSpacesResults"
6431             }
6432           }
6433         },
6434         "ListSubnets": {
6435           "type": "object",
6436           "properties": {
6437             "Params": {
6438               "$ref": "#/definitions/SubnetsFilters"
6439             },
6440             "Result": {
6441               "$ref": "#/definitions/ListSubnetsResults"
6442             }
6443           }
6444         },
6445         "ModelConfig": {
6446           "type": "object",
6447           "properties": {
6448             "Result": {
6449               "$ref": "#/definitions/ModelConfigResult"
6450             }
6451           }
6452         }
6453       },
6454       "definitions": {
6455         "AddSubnetParams": {
6456           "type": "object",
6457           "properties": {
6458             "SpaceTag": {
6459               "type": "string"
6460             },
6461             "SubnetProviderId": {
6462               "type": "string"
6463             },
6464             "SubnetTag": {
6465               "type": "string"
6466             },
6467             "Zones": {
6468               "type": "array",
6469               "items": {
6470                 "type": "string"
6471               }
6472             }
6473           },
6474           "additionalProperties": false,
6475           "required": [
6476             "SpaceTag"
6477           ]
6478         },
6479         "AddSubnetsParams": {
6480           "type": "object",
6481           "properties": {
6482             "Subnets": {
6483               "type": "array",
6484               "items": {
6485                 "$ref": "#/definitions/AddSubnetParams"
6486               }
6487             }
6488           },
6489           "additionalProperties": false,
6490           "required": [
6491             "Subnets"
6492           ]
6493         },
6494         "CreateSpaceParams": {
6495           "type": "object",
6496           "properties": {
6497             "ProviderId": {
6498               "type": "string"
6499             },
6500             "Public": {
6501               "type": "boolean"
6502             },
6503             "SpaceTag": {
6504               "type": "string"
6505             },
6506             "SubnetTags": {
6507               "type": "array",
6508               "items": {
6509                 "type": "string"
6510               }
6511             }
6512           },
6513           "additionalProperties": false,
6514           "required": [
6515             "SubnetTags",
6516             "SpaceTag",
6517             "Public"
6518           ]
6519         },
6520         "CreateSpacesParams": {
6521           "type": "object",
6522           "properties": {
6523             "Spaces": {
6524               "type": "array",
6525               "items": {
6526                 "$ref": "#/definitions/CreateSpaceParams"
6527               }
6528             }
6529           },
6530           "additionalProperties": false,
6531           "required": [
6532             "Spaces"
6533           ]
6534         },
6535         "DiscoverSpacesResults": {
6536           "type": "object",
6537           "properties": {
6538             "Results": {
6539               "type": "array",
6540               "items": {
6541                 "$ref": "#/definitions/ProviderSpace"
6542               }
6543             }
6544           },
6545           "additionalProperties": false,
6546           "required": [
6547             "Results"
6548           ]
6549         },
6550         "Error": {
6551           "type": "object",
6552           "properties": {
6553             "Code": {
6554               "type": "string"
6555             },
6556             "Info": {
6557               "$ref": "#/definitions/ErrorInfo"
6558             },
6559             "Message": {
6560               "type": "string"
6561             }
6562           },
6563           "additionalProperties": false,
6564           "required": [
6565             "Message",
6566             "Code"
6567           ]
6568         },
6569         "ErrorInfo": {
6570           "type": "object",
6571           "properties": {
6572             "Macaroon": {
6573               "$ref": "#/definitions/Macaroon"
6574             },
6575             "MacaroonPath": {
6576               "type": "string"
6577             }
6578           },
6579           "additionalProperties": false
6580         },
6581         "ErrorResult": {
6582           "type": "object",
6583           "properties": {
6584             "Error": {
6585               "$ref": "#/definitions/Error"
6586             }
6587           },
6588           "additionalProperties": false,
6589           "required": [
6590             "Error"
6591           ]
6592         },
6593         "ErrorResults": {
6594           "type": "object",
6595           "properties": {
6596             "Results": {
6597               "type": "array",
6598               "items": {
6599                 "$ref": "#/definitions/ErrorResult"
6600               }
6601             }
6602           },
6603           "additionalProperties": false,
6604           "required": [
6605             "Results"
6606           ]
6607         },
6608         "ListSubnetsResults": {
6609           "type": "object",
6610           "properties": {
6611             "Results": {
6612               "type": "array",
6613               "items": {
6614                 "$ref": "#/definitions/Subnet"
6615               }
6616             }
6617           },
6618           "additionalProperties": false,
6619           "required": [
6620             "Results"
6621           ]
6622         },
6623         "Macaroon": {
6624           "type": "object",
6625           "properties": {
6626             "caveats": {
6627               "type": "array",
6628               "items": {
6629                 "$ref": "#/definitions/caveat"
6630               }
6631             },
6632             "data": {
6633               "type": "array",
6634               "items": {
6635                 "type": "integer"
6636               }
6637             },
6638             "id": {
6639               "$ref": "#/definitions/packet"
6640             },
6641             "location": {
6642               "$ref": "#/definitions/packet"
6643             },
6644             "sig": {
6645               "type": "array",
6646               "items": {
6647                 "type": "integer"
6648               }
6649             }
6650           },
6651           "additionalProperties": false,
6652           "required": [
6653             "data",
6654             "location",
6655             "id",
6656             "caveats",
6657             "sig"
6658           ]
6659         },
6660         "ModelConfigResult": {
6661           "type": "object",
6662           "properties": {
6663             "Config": {
6664               "type": "object",
6665               "patternProperties": {
6666                 ".*": {
6667                   "type": "object",
6668                   "additionalProperties": true
6669                 }
6670               }
6671             }
6672           },
6673           "additionalProperties": false,
6674           "required": [
6675             "Config"
6676           ]
6677         },
6678         "ProviderSpace": {
6679           "type": "object",
6680           "properties": {
6681             "Error": {
6682               "$ref": "#/definitions/Error"
6683             },
6684             "Name": {
6685               "type": "string"
6686             },
6687             "ProviderId": {
6688               "type": "string"
6689             },
6690             "Subnets": {
6691               "type": "array",
6692               "items": {
6693                 "$ref": "#/definitions/Subnet"
6694               }
6695             }
6696           },
6697           "additionalProperties": false,
6698           "required": [
6699             "Name",
6700             "ProviderId",
6701             "Subnets"
6702           ]
6703         },
6704         "Subnet": {
6705           "type": "object",
6706           "properties": {
6707             "CIDR": {
6708               "type": "string"
6709             },
6710             "Life": {
6711               "type": "string"
6712             },
6713             "ProviderId": {
6714               "type": "string"
6715             },
6716             "SpaceTag": {
6717               "type": "string"
6718             },
6719             "StaticRangeHighIP": {
6720               "type": "array",
6721               "items": {
6722                 "type": "integer"
6723               }
6724             },
6725             "StaticRangeLowIP": {
6726               "type": "array",
6727               "items": {
6728                 "type": "integer"
6729               }
6730             },
6731             "Status": {
6732               "type": "string"
6733             },
6734             "VLANTag": {
6735               "type": "integer"
6736             },
6737             "Zones": {
6738               "type": "array",
6739               "items": {
6740                 "type": "string"
6741               }
6742             }
6743           },
6744           "additionalProperties": false,
6745           "required": [
6746             "CIDR",
6747             "VLANTag",
6748             "Life",
6749             "SpaceTag",
6750             "Zones"
6751           ]
6752         },
6753         "SubnetsFilters": {
6754           "type": "object",
6755           "properties": {
6756             "SpaceTag": {
6757               "type": "string"
6758             },
6759             "Zone": {
6760               "type": "string"
6761             }
6762           },
6763           "additionalProperties": false
6764         },
6765         "caveat": {
6766           "type": "object",
6767           "properties": {
6768             "caveatId": {
6769               "$ref": "#/definitions/packet"
6770             },
6771             "location": {
6772               "$ref": "#/definitions/packet"
6773             },
6774             "verificationId": {
6775               "$ref": "#/definitions/packet"
6776             }
6777           },
6778           "additionalProperties": false,
6779           "required": [
6780             "location",
6781             "caveatId",
6782             "verificationId"
6783           ]
6784         },
6785         "packet": {
6786           "type": "object",
6787           "properties": {
6788             "headerLen": {
6789               "type": "integer"
6790             },
6791             "start": {
6792               "type": "integer"
6793             },
6794             "totalLen": {
6795               "type": "integer"
6796             }
6797           },
6798           "additionalProperties": false,
6799           "required": [
6800             "start",
6801             "totalLen",
6802             "headerLen"
6803           ]
6804         }
6805       }
6806     }
6807   },
6808   {
6809     "Name": "DiskManager",
6810     "Version": 2,
6811     "Schema": {
6812       "type": "object",
6813       "properties": {
6814         "SetMachineBlockDevices": {
6815           "type": "object",
6816           "properties": {
6817             "Params": {
6818               "$ref": "#/definitions/SetMachineBlockDevices"
6819             },
6820             "Result": {
6821               "$ref": "#/definitions/ErrorResults"
6822             }
6823           }
6824         }
6825       },
6826       "definitions": {
6827         "BlockDevice": {
6828           "type": "object",
6829           "properties": {
6830             "BusAddress": {
6831               "type": "string"
6832             },
6833             "DeviceLinks": {
6834               "type": "array",
6835               "items": {
6836                 "type": "string"
6837               }
6838             },
6839             "DeviceName": {
6840               "type": "string"
6841             },
6842             "FilesystemType": {
6843               "type": "string"
6844             },
6845             "HardwareId": {
6846               "type": "string"
6847             },
6848             "InUse": {
6849               "type": "boolean"
6850             },
6851             "Label": {
6852               "type": "string"
6853             },
6854             "MountPoint": {
6855               "type": "string"
6856             },
6857             "Size": {
6858               "type": "integer"
6859             },
6860             "UUID": {
6861               "type": "string"
6862             }
6863           },
6864           "additionalProperties": false,
6865           "required": [
6866             "DeviceName",
6867             "DeviceLinks",
6868             "Label",
6869             "UUID",
6870             "HardwareId",
6871             "BusAddress",
6872             "Size",
6873             "FilesystemType",
6874             "InUse",
6875             "MountPoint"
6876           ]
6877         },
6878         "Error": {
6879           "type": "object",
6880           "properties": {
6881             "Code": {
6882               "type": "string"
6883             },
6884             "Info": {
6885               "$ref": "#/definitions/ErrorInfo"
6886             },
6887             "Message": {
6888               "type": "string"
6889             }
6890           },
6891           "additionalProperties": false,
6892           "required": [
6893             "Message",
6894             "Code"
6895           ]
6896         },
6897         "ErrorInfo": {
6898           "type": "object",
6899           "properties": {
6900             "Macaroon": {
6901               "$ref": "#/definitions/Macaroon"
6902             },
6903             "MacaroonPath": {
6904               "type": "string"
6905             }
6906           },
6907           "additionalProperties": false
6908         },
6909         "ErrorResult": {
6910           "type": "object",
6911           "properties": {
6912             "Error": {
6913               "$ref": "#/definitions/Error"
6914             }
6915           },
6916           "additionalProperties": false,
6917           "required": [
6918             "Error"
6919           ]
6920         },
6921         "ErrorResults": {
6922           "type": "object",
6923           "properties": {
6924             "Results": {
6925               "type": "array",
6926               "items": {
6927                 "$ref": "#/definitions/ErrorResult"
6928               }
6929             }
6930           },
6931           "additionalProperties": false,
6932           "required": [
6933             "Results"
6934           ]
6935         },
6936         "Macaroon": {
6937           "type": "object",
6938           "properties": {
6939             "caveats": {
6940               "type": "array",
6941               "items": {
6942                 "$ref": "#/definitions/caveat"
6943               }
6944             },
6945             "data": {
6946               "type": "array",
6947               "items": {
6948                 "type": "integer"
6949               }
6950             },
6951             "id": {
6952               "$ref": "#/definitions/packet"
6953             },
6954             "location": {
6955               "$ref": "#/definitions/packet"
6956             },
6957             "sig": {
6958               "type": "array",
6959               "items": {
6960                 "type": "integer"
6961               }
6962             }
6963           },
6964           "additionalProperties": false,
6965           "required": [
6966             "data",
6967             "location",
6968             "id",
6969             "caveats",
6970             "sig"
6971           ]
6972         },
6973         "MachineBlockDevices": {
6974           "type": "object",
6975           "properties": {
6976             "blockdevices": {
6977               "type": "array",
6978               "items": {
6979                 "$ref": "#/definitions/BlockDevice"
6980               }
6981             },
6982             "machine": {
6983               "type": "string"
6984             }
6985           },
6986           "additionalProperties": false,
6987           "required": [
6988             "machine"
6989           ]
6990         },
6991         "SetMachineBlockDevices": {
6992           "type": "object",
6993           "properties": {
6994             "machineblockdevices": {
6995               "type": "array",
6996               "items": {
6997                 "$ref": "#/definitions/MachineBlockDevices"
6998               }
6999             }
7000           },
7001           "additionalProperties": false,
7002           "required": [
7003             "machineblockdevices"
7004           ]
7005         },
7006         "caveat": {
7007           "type": "object",
7008           "properties": {
7009             "caveatId": {
7010               "$ref": "#/definitions/packet"
7011             },
7012             "location": {
7013               "$ref": "#/definitions/packet"
7014             },
7015             "verificationId": {
7016               "$ref": "#/definitions/packet"
7017             }
7018           },
7019           "additionalProperties": false,
7020           "required": [
7021             "location",
7022             "caveatId",
7023             "verificationId"
7024           ]
7025         },
7026         "packet": {
7027           "type": "object",
7028           "properties": {
7029             "headerLen": {
7030               "type": "integer"
7031             },
7032             "start": {
7033               "type": "integer"
7034             },
7035             "totalLen": {
7036               "type": "integer"
7037             }
7038           },
7039           "additionalProperties": false,
7040           "required": [
7041             "start",
7042             "totalLen",
7043             "headerLen"
7044           ]
7045         }
7046       }
7047     }
7048   },
7049   {
7050     "Name": "EntityWatcher",
7051     "Version": 2,
7052     "Schema": {
7053       "type": "object",
7054       "properties": {
7055         "Next": {
7056           "type": "object",
7057           "properties": {
7058             "Result": {
7059               "$ref": "#/definitions/EntitiesWatchResult"
7060             }
7061           }
7062         },
7063         "Stop": {
7064           "type": "object"
7065         }
7066       },
7067       "definitions": {
7068         "EntitiesWatchResult": {
7069           "type": "object",
7070           "properties": {
7071             "Changes": {
7072               "type": "array",
7073               "items": {
7074                 "type": "string"
7075               }
7076             },
7077             "EntityWatcherId": {
7078               "type": "string"
7079             },
7080             "Error": {
7081               "$ref": "#/definitions/Error"
7082             }
7083           },
7084           "additionalProperties": false,
7085           "required": [
7086             "EntityWatcherId",
7087             "Changes",
7088             "Error"
7089           ]
7090         },
7091         "Error": {
7092           "type": "object",
7093           "properties": {
7094             "Code": {
7095               "type": "string"
7096             },
7097             "Info": {
7098               "$ref": "#/definitions/ErrorInfo"
7099             },
7100             "Message": {
7101               "type": "string"
7102             }
7103           },
7104           "additionalProperties": false,
7105           "required": [
7106             "Message",
7107             "Code"
7108           ]
7109         },
7110         "ErrorInfo": {
7111           "type": "object",
7112           "properties": {
7113             "Macaroon": {
7114               "$ref": "#/definitions/Macaroon"
7115             },
7116             "MacaroonPath": {
7117               "type": "string"
7118             }
7119           },
7120           "additionalProperties": false
7121         },
7122         "Macaroon": {
7123           "type": "object",
7124           "properties": {
7125             "caveats": {
7126               "type": "array",
7127               "items": {
7128                 "$ref": "#/definitions/caveat"
7129               }
7130             },
7131             "data": {
7132               "type": "array",
7133               "items": {
7134                 "type": "integer"
7135               }
7136             },
7137             "id": {
7138               "$ref": "#/definitions/packet"
7139             },
7140             "location": {
7141               "$ref": "#/definitions/packet"
7142             },
7143             "sig": {
7144               "type": "array",
7145               "items": {
7146                 "type": "integer"
7147               }
7148             }
7149           },
7150           "additionalProperties": false,
7151           "required": [
7152             "data",
7153             "location",
7154             "id",
7155             "caveats",
7156             "sig"
7157           ]
7158         },
7159         "caveat": {
7160           "type": "object",
7161           "properties": {
7162             "caveatId": {
7163               "$ref": "#/definitions/packet"
7164             },
7165             "location": {
7166               "$ref": "#/definitions/packet"
7167             },
7168             "verificationId": {
7169               "$ref": "#/definitions/packet"
7170             }
7171           },
7172           "additionalProperties": false,
7173           "required": [
7174             "location",
7175             "caveatId",
7176             "verificationId"
7177           ]
7178         },
7179         "packet": {
7180           "type": "object",
7181           "properties": {
7182             "headerLen": {
7183               "type": "integer"
7184             },
7185             "start": {
7186               "type": "integer"
7187             },
7188             "totalLen": {
7189               "type": "integer"
7190             }
7191           },
7192           "additionalProperties": false,
7193           "required": [
7194             "start",
7195             "totalLen",
7196             "headerLen"
7197           ]
7198         }
7199       }
7200     }
7201   },
7202   {
7203     "Name": "FilesystemAttachmentsWatcher",
7204     "Version": 2,
7205     "Schema": {
7206       "type": "object",
7207       "properties": {
7208         "Next": {
7209           "type": "object",
7210           "properties": {
7211             "Result": {
7212               "$ref": "#/definitions/MachineStorageIdsWatchResult"
7213             }
7214           }
7215         },
7216         "Stop": {
7217           "type": "object"
7218         }
7219       },
7220       "definitions": {
7221         "Error": {
7222           "type": "object",
7223           "properties": {
7224             "Code": {
7225               "type": "string"
7226             },
7227             "Info": {
7228               "$ref": "#/definitions/ErrorInfo"
7229             },
7230             "Message": {
7231               "type": "string"
7232             }
7233           },
7234           "additionalProperties": false,
7235           "required": [
7236             "Message",
7237             "Code"
7238           ]
7239         },
7240         "ErrorInfo": {
7241           "type": "object",
7242           "properties": {
7243             "Macaroon": {
7244               "$ref": "#/definitions/Macaroon"
7245             },
7246             "MacaroonPath": {
7247               "type": "string"
7248             }
7249           },
7250           "additionalProperties": false
7251         },
7252         "Macaroon": {
7253           "type": "object",
7254           "properties": {
7255             "caveats": {
7256               "type": "array",
7257               "items": {
7258                 "$ref": "#/definitions/caveat"
7259               }
7260             },
7261             "data": {
7262               "type": "array",
7263               "items": {
7264                 "type": "integer"
7265               }
7266             },
7267             "id": {
7268               "$ref": "#/definitions/packet"
7269             },
7270             "location": {
7271               "$ref": "#/definitions/packet"
7272             },
7273             "sig": {
7274               "type": "array",
7275               "items": {
7276                 "type": "integer"
7277               }
7278             }
7279           },
7280           "additionalProperties": false,
7281           "required": [
7282             "data",
7283             "location",
7284             "id",
7285             "caveats",
7286             "sig"
7287           ]
7288         },
7289         "MachineStorageId": {
7290           "type": "object",
7291           "properties": {
7292             "attachmenttag": {
7293               "type": "string"
7294             },
7295             "machinetag": {
7296               "type": "string"
7297             }
7298           },
7299           "additionalProperties": false,
7300           "required": [
7301             "machinetag",
7302             "attachmenttag"
7303           ]
7304         },
7305         "MachineStorageIdsWatchResult": {
7306           "type": "object",
7307           "properties": {
7308             "Changes": {
7309               "type": "array",
7310               "items": {
7311                 "$ref": "#/definitions/MachineStorageId"
7312               }
7313             },
7314             "Error": {
7315               "$ref": "#/definitions/Error"
7316             },
7317             "MachineStorageIdsWatcherId": {
7318               "type": "string"
7319             }
7320           },
7321           "additionalProperties": false,
7322           "required": [
7323             "MachineStorageIdsWatcherId",
7324             "Changes",
7325             "Error"
7326           ]
7327         },
7328         "caveat": {
7329           "type": "object",
7330           "properties": {
7331             "caveatId": {
7332               "$ref": "#/definitions/packet"
7333             },
7334             "location": {
7335               "$ref": "#/definitions/packet"
7336             },
7337             "verificationId": {
7338               "$ref": "#/definitions/packet"
7339             }
7340           },
7341           "additionalProperties": false,
7342           "required": [
7343             "location",
7344             "caveatId",
7345             "verificationId"
7346           ]
7347         },
7348         "packet": {
7349           "type": "object",
7350           "properties": {
7351             "headerLen": {
7352               "type": "integer"
7353             },
7354             "start": {
7355               "type": "integer"
7356             },
7357             "totalLen": {
7358               "type": "integer"
7359             }
7360           },
7361           "additionalProperties": false,
7362           "required": [
7363             "start",
7364             "totalLen",
7365             "headerLen"
7366           ]
7367         }
7368       }
7369     }
7370   },
7371   {
7372     "Name": "Firewaller",
7373     "Version": 3,
7374     "Schema": {
7375       "type": "object",
7376       "properties": {
7377         "GetAssignedMachine": {
7378           "type": "object",
7379           "properties": {
7380             "Params": {
7381               "$ref": "#/definitions/Entities"
7382             },
7383             "Result": {
7384               "$ref": "#/definitions/StringResults"
7385             }
7386           }
7387         },
7388         "GetExposed": {
7389           "type": "object",
7390           "properties": {
7391             "Params": {
7392               "$ref": "#/definitions/Entities"
7393             },
7394             "Result": {
7395               "$ref": "#/definitions/BoolResults"
7396             }
7397           }
7398         },
7399         "GetMachineActiveSubnets": {
7400           "type": "object",
7401           "properties": {
7402             "Params": {
7403               "$ref": "#/definitions/Entities"
7404             },
7405             "Result": {
7406               "$ref": "#/definitions/StringsResults"
7407             }
7408           }
7409         },
7410         "GetMachinePorts": {
7411           "type": "object",
7412           "properties": {
7413             "Params": {
7414               "$ref": "#/definitions/MachinePortsParams"
7415             },
7416             "Result": {
7417               "$ref": "#/definitions/MachinePortsResults"
7418             }
7419           }
7420         },
7421         "InstanceId": {
7422           "type": "object",
7423           "properties": {
7424             "Params": {
7425               "$ref": "#/definitions/Entities"
7426             },
7427             "Result": {
7428               "$ref": "#/definitions/StringResults"
7429             }
7430           }
7431         },
7432         "Life": {
7433           "type": "object",
7434           "properties": {
7435             "Params": {
7436               "$ref": "#/definitions/Entities"
7437             },
7438             "Result": {
7439               "$ref": "#/definitions/LifeResults"
7440             }
7441           }
7442         },
7443         "ModelConfig": {
7444           "type": "object",
7445           "properties": {
7446             "Result": {
7447               "$ref": "#/definitions/ModelConfigResult"
7448             }
7449           }
7450         },
7451         "Watch": {
7452           "type": "object",
7453           "properties": {
7454             "Params": {
7455               "$ref": "#/definitions/Entities"
7456             },
7457             "Result": {
7458               "$ref": "#/definitions/NotifyWatchResults"
7459             }
7460           }
7461         },
7462         "WatchForModelConfigChanges": {
7463           "type": "object",
7464           "properties": {
7465             "Result": {
7466               "$ref": "#/definitions/NotifyWatchResult"
7467             }
7468           }
7469         },
7470         "WatchModelMachines": {
7471           "type": "object",
7472           "properties": {
7473             "Result": {
7474               "$ref": "#/definitions/StringsWatchResult"
7475             }
7476           }
7477         },
7478         "WatchOpenedPorts": {
7479           "type": "object",
7480           "properties": {
7481             "Params": {
7482               "$ref": "#/definitions/Entities"
7483             },
7484             "Result": {
7485               "$ref": "#/definitions/StringsWatchResults"
7486             }
7487           }
7488         },
7489         "WatchUnits": {
7490           "type": "object",
7491           "properties": {
7492             "Params": {
7493               "$ref": "#/definitions/Entities"
7494             },
7495             "Result": {
7496               "$ref": "#/definitions/StringsWatchResults"
7497             }
7498           }
7499         }
7500       },
7501       "definitions": {
7502         "BoolResult": {
7503           "type": "object",
7504           "properties": {
7505             "Error": {
7506               "$ref": "#/definitions/Error"
7507             },
7508             "Result": {
7509               "type": "boolean"
7510             }
7511           },
7512           "additionalProperties": false,
7513           "required": [
7514             "Error",
7515             "Result"
7516           ]
7517         },
7518         "BoolResults": {
7519           "type": "object",
7520           "properties": {
7521             "Results": {
7522               "type": "array",
7523               "items": {
7524                 "$ref": "#/definitions/BoolResult"
7525               }
7526             }
7527           },
7528           "additionalProperties": false,
7529           "required": [
7530             "Results"
7531           ]
7532         },
7533         "Entities": {
7534           "type": "object",
7535           "properties": {
7536             "Entities": {
7537               "type": "array",
7538               "items": {
7539                 "$ref": "#/definitions/Entity"
7540               }
7541             }
7542           },
7543           "additionalProperties": false,
7544           "required": [
7545             "Entities"
7546           ]
7547         },
7548         "Entity": {
7549           "type": "object",
7550           "properties": {
7551             "Tag": {
7552               "type": "string"
7553             }
7554           },
7555           "additionalProperties": false,
7556           "required": [
7557             "Tag"
7558           ]
7559         },
7560         "Error": {
7561           "type": "object",
7562           "properties": {
7563             "Code": {
7564               "type": "string"
7565             },
7566             "Info": {
7567               "$ref": "#/definitions/ErrorInfo"
7568             },
7569             "Message": {
7570               "type": "string"
7571             }
7572           },
7573           "additionalProperties": false,
7574           "required": [
7575             "Message",
7576             "Code"
7577           ]
7578         },
7579         "ErrorInfo": {
7580           "type": "object",
7581           "properties": {
7582             "Macaroon": {
7583               "$ref": "#/definitions/Macaroon"
7584             },
7585             "MacaroonPath": {
7586               "type": "string"
7587             }
7588           },
7589           "additionalProperties": false
7590         },
7591         "LifeResult": {
7592           "type": "object",
7593           "properties": {
7594             "Error": {
7595               "$ref": "#/definitions/Error"
7596             },
7597             "Life": {
7598               "type": "string"
7599             }
7600           },
7601           "additionalProperties": false,
7602           "required": [
7603             "Life",
7604             "Error"
7605           ]
7606         },
7607         "LifeResults": {
7608           "type": "object",
7609           "properties": {
7610             "Results": {
7611               "type": "array",
7612               "items": {
7613                 "$ref": "#/definitions/LifeResult"
7614               }
7615             }
7616           },
7617           "additionalProperties": false,
7618           "required": [
7619             "Results"
7620           ]
7621         },
7622         "Macaroon": {
7623           "type": "object",
7624           "properties": {
7625             "caveats": {
7626               "type": "array",
7627               "items": {
7628                 "$ref": "#/definitions/caveat"
7629               }
7630             },
7631             "data": {
7632               "type": "array",
7633               "items": {
7634                 "type": "integer"
7635               }
7636             },
7637             "id": {
7638               "$ref": "#/definitions/packet"
7639             },
7640             "location": {
7641               "$ref": "#/definitions/packet"
7642             },
7643             "sig": {
7644               "type": "array",
7645               "items": {
7646                 "type": "integer"
7647               }
7648             }
7649           },
7650           "additionalProperties": false,
7651           "required": [
7652             "data",
7653             "location",
7654             "id",
7655             "caveats",
7656             "sig"
7657           ]
7658         },
7659         "MachinePortRange": {
7660           "type": "object",
7661           "properties": {
7662             "PortRange": {
7663               "$ref": "#/definitions/PortRange"
7664             },
7665             "RelationTag": {
7666               "type": "string"
7667             },
7668             "UnitTag": {
7669               "type": "string"
7670             }
7671           },
7672           "additionalProperties": false,
7673           "required": [
7674             "UnitTag",
7675             "RelationTag",
7676             "PortRange"
7677           ]
7678         },
7679         "MachinePorts": {
7680           "type": "object",
7681           "properties": {
7682             "MachineTag": {
7683               "type": "string"
7684             },
7685             "SubnetTag": {
7686               "type": "string"
7687             }
7688           },
7689           "additionalProperties": false,
7690           "required": [
7691             "MachineTag",
7692             "SubnetTag"
7693           ]
7694         },
7695         "MachinePortsParams": {
7696           "type": "object",
7697           "properties": {
7698             "Params": {
7699               "type": "array",
7700               "items": {
7701                 "$ref": "#/definitions/MachinePorts"
7702               }
7703             }
7704           },
7705           "additionalProperties": false,
7706           "required": [
7707             "Params"
7708           ]
7709         },
7710         "MachinePortsResult": {
7711           "type": "object",
7712           "properties": {
7713             "Error": {
7714               "$ref": "#/definitions/Error"
7715             },
7716             "Ports": {
7717               "type": "array",
7718               "items": {
7719                 "$ref": "#/definitions/MachinePortRange"
7720               }
7721             }
7722           },
7723           "additionalProperties": false,
7724           "required": [
7725             "Error",
7726             "Ports"
7727           ]
7728         },
7729         "MachinePortsResults": {
7730           "type": "object",
7731           "properties": {
7732             "Results": {
7733               "type": "array",
7734               "items": {
7735                 "$ref": "#/definitions/MachinePortsResult"
7736               }
7737             }
7738           },
7739           "additionalProperties": false,
7740           "required": [
7741             "Results"
7742           ]
7743         },
7744         "ModelConfigResult": {
7745           "type": "object",
7746           "properties": {
7747             "Config": {
7748               "type": "object",
7749               "patternProperties": {
7750                 ".*": {
7751                   "type": "object",
7752                   "additionalProperties": true
7753                 }
7754               }
7755             }
7756           },
7757           "additionalProperties": false,
7758           "required": [
7759             "Config"
7760           ]
7761         },
7762         "NotifyWatchResult": {
7763           "type": "object",
7764           "properties": {
7765             "Error": {
7766               "$ref": "#/definitions/Error"
7767             },
7768             "NotifyWatcherId": {
7769               "type": "string"
7770             }
7771           },
7772           "additionalProperties": false,
7773           "required": [
7774             "NotifyWatcherId",
7775             "Error"
7776           ]
7777         },
7778         "NotifyWatchResults": {
7779           "type": "object",
7780           "properties": {
7781             "Results": {
7782               "type": "array",
7783               "items": {
7784                 "$ref": "#/definitions/NotifyWatchResult"
7785               }
7786             }
7787           },
7788           "additionalProperties": false,
7789           "required": [
7790             "Results"
7791           ]
7792         },
7793         "PortRange": {
7794           "type": "object",
7795           "properties": {
7796             "FromPort": {
7797               "type": "integer"
7798             },
7799             "Protocol": {
7800               "type": "string"
7801             },
7802             "ToPort": {
7803               "type": "integer"
7804             }
7805           },
7806           "additionalProperties": false,
7807           "required": [
7808             "FromPort",
7809             "ToPort",
7810             "Protocol"
7811           ]
7812         },
7813         "StringResult": {
7814           "type": "object",
7815           "properties": {
7816             "Error": {
7817               "$ref": "#/definitions/Error"
7818             },
7819             "Result": {
7820               "type": "string"
7821             }
7822           },
7823           "additionalProperties": false,
7824           "required": [
7825             "Error",
7826             "Result"
7827           ]
7828         },
7829         "StringResults": {
7830           "type": "object",
7831           "properties": {
7832             "Results": {
7833               "type": "array",
7834               "items": {
7835                 "$ref": "#/definitions/StringResult"
7836               }
7837             }
7838           },
7839           "additionalProperties": false,
7840           "required": [
7841             "Results"
7842           ]
7843         },
7844         "StringsResult": {
7845           "type": "object",
7846           "properties": {
7847             "Error": {
7848               "$ref": "#/definitions/Error"
7849             },
7850             "Result": {
7851               "type": "array",
7852               "items": {
7853                 "type": "string"
7854               }
7855             }
7856           },
7857           "additionalProperties": false,
7858           "required": [
7859             "Error",
7860             "Result"
7861           ]
7862         },
7863         "StringsResults": {
7864           "type": "object",
7865           "properties": {
7866             "Results": {
7867               "type": "array",
7868               "items": {
7869                 "$ref": "#/definitions/StringsResult"
7870               }
7871             }
7872           },
7873           "additionalProperties": false,
7874           "required": [
7875             "Results"
7876           ]
7877         },
7878         "StringsWatchResult": {
7879           "type": "object",
7880           "properties": {
7881             "Changes": {
7882               "type": "array",
7883               "items": {
7884                 "type": "string"
7885               }
7886             },
7887             "Error": {
7888               "$ref": "#/definitions/Error"
7889             },
7890             "StringsWatcherId": {
7891               "type": "string"
7892             }
7893           },
7894           "additionalProperties": false,
7895           "required": [
7896             "StringsWatcherId",
7897             "Changes",
7898             "Error"
7899           ]
7900         },
7901         "StringsWatchResults": {
7902           "type": "object",
7903           "properties": {
7904             "Results": {
7905               "type": "array",
7906               "items": {
7907                 "$ref": "#/definitions/StringsWatchResult"
7908               }
7909             }
7910           },
7911           "additionalProperties": false,
7912           "required": [
7913             "Results"
7914           ]
7915         },
7916         "caveat": {
7917           "type": "object",
7918           "properties": {
7919             "caveatId": {
7920               "$ref": "#/definitions/packet"
7921             },
7922             "location": {
7923               "$ref": "#/definitions/packet"
7924             },
7925             "verificationId": {
7926               "$ref": "#/definitions/packet"
7927             }
7928           },
7929           "additionalProperties": false,
7930           "required": [
7931             "location",
7932             "caveatId",
7933             "verificationId"
7934           ]
7935         },
7936         "packet": {
7937           "type": "object",
7938           "properties": {
7939             "headerLen": {
7940               "type": "integer"
7941             },
7942             "start": {
7943               "type": "integer"
7944             },
7945             "totalLen": {
7946               "type": "integer"
7947             }
7948           },
7949           "additionalProperties": false,
7950           "required": [
7951             "start",
7952             "totalLen",
7953             "headerLen"
7954           ]
7955         }
7956       }
7957     }
7958   },
7959   {
7960     "Name": "HighAvailability",
7961     "Version": 2,
7962     "Schema": {
7963       "type": "object",
7964       "properties": {
7965         "EnableHA": {
7966           "type": "object",
7967           "properties": {
7968             "Params": {
7969               "$ref": "#/definitions/ControllersSpecs"
7970             },
7971             "Result": {
7972               "$ref": "#/definitions/ControllersChangeResults"
7973             }
7974           }
7975         },
7976         "ResumeHAReplicationAfterUpgrade": {
7977           "type": "object",
7978           "properties": {
7979             "Params": {
7980               "$ref": "#/definitions/ResumeReplicationParams"
7981             }
7982           }
7983         },
7984         "StopHAReplicationForUpgrade": {
7985           "type": "object",
7986           "properties": {
7987             "Params": {
7988               "$ref": "#/definitions/UpgradeMongoParams"
7989             },
7990             "Result": {
7991               "$ref": "#/definitions/MongoUpgradeResults"
7992             }
7993           }
7994         }
7995       },
7996       "definitions": {
7997         "Address": {
7998           "type": "object",
7999           "properties": {
8000             "Scope": {
8001               "type": "string"
8002             },
8003             "SpaceName": {
8004               "type": "string"
8005             },
8006             "SpaceProviderId": {
8007               "type": "string"
8008             },
8009             "Type": {
8010               "type": "string"
8011             },
8012             "Value": {
8013               "type": "string"
8014             }
8015           },
8016           "additionalProperties": false,
8017           "required": [
8018             "Value",
8019             "Type",
8020             "Scope",
8021             "SpaceName",
8022             "SpaceProviderId"
8023           ]
8024         },
8025         "ControllersChangeResult": {
8026           "type": "object",
8027           "properties": {
8028             "Error": {
8029               "$ref": "#/definitions/Error"
8030             },
8031             "Result": {
8032               "$ref": "#/definitions/ControllersChanges"
8033             }
8034           },
8035           "additionalProperties": false,
8036           "required": [
8037             "Result",
8038             "Error"
8039           ]
8040         },
8041         "ControllersChangeResults": {
8042           "type": "object",
8043           "properties": {
8044             "Results": {
8045               "type": "array",
8046               "items": {
8047                 "$ref": "#/definitions/ControllersChangeResult"
8048               }
8049             }
8050           },
8051           "additionalProperties": false,
8052           "required": [
8053             "Results"
8054           ]
8055         },
8056         "ControllersChanges": {
8057           "type": "object",
8058           "properties": {
8059             "added": {
8060               "type": "array",
8061               "items": {
8062                 "type": "string"
8063               }
8064             },
8065             "converted": {
8066               "type": "array",
8067               "items": {
8068                 "type": "string"
8069               }
8070             },
8071             "demoted": {
8072               "type": "array",
8073               "items": {
8074                 "type": "string"
8075               }
8076             },
8077             "maintained": {
8078               "type": "array",
8079               "items": {
8080                 "type": "string"
8081               }
8082             },
8083             "promoted": {
8084               "type": "array",
8085               "items": {
8086                 "type": "string"
8087               }
8088             },
8089             "removed": {
8090               "type": "array",
8091               "items": {
8092                 "type": "string"
8093               }
8094             }
8095           },
8096           "additionalProperties": false
8097         },
8098         "ControllersSpec": {
8099           "type": "object",
8100           "properties": {
8101             "ModelTag": {
8102               "type": "string"
8103             },
8104             "constraints": {
8105               "$ref": "#/definitions/Value"
8106             },
8107             "num-controllers": {
8108               "type": "integer"
8109             },
8110             "placement": {
8111               "type": "array",
8112               "items": {
8113                 "type": "string"
8114               }
8115             },
8116             "series": {
8117               "type": "string"
8118             }
8119           },
8120           "additionalProperties": false,
8121           "required": [
8122             "ModelTag",
8123             "num-controllers"
8124           ]
8125         },
8126         "ControllersSpecs": {
8127           "type": "object",
8128           "properties": {
8129             "Specs": {
8130               "type": "array",
8131               "items": {
8132                 "$ref": "#/definitions/ControllersSpec"
8133               }
8134             }
8135           },
8136           "additionalProperties": false,
8137           "required": [
8138             "Specs"
8139           ]
8140         },
8141         "Error": {
8142           "type": "object",
8143           "properties": {
8144             "Code": {
8145               "type": "string"
8146             },
8147             "Info": {
8148               "$ref": "#/definitions/ErrorInfo"
8149             },
8150             "Message": {
8151               "type": "string"
8152             }
8153           },
8154           "additionalProperties": false,
8155           "required": [
8156             "Message",
8157             "Code"
8158           ]
8159         },
8160         "ErrorInfo": {
8161           "type": "object",
8162           "properties": {
8163             "Macaroon": {
8164               "$ref": "#/definitions/Macaroon"
8165             },
8166             "MacaroonPath": {
8167               "type": "string"
8168             }
8169           },
8170           "additionalProperties": false
8171         },
8172         "HAMember": {
8173           "type": "object",
8174           "properties": {
8175             "PublicAddress": {
8176               "$ref": "#/definitions/Address"
8177             },
8178             "Series": {
8179               "type": "string"
8180             },
8181             "Tag": {
8182               "type": "string"
8183             }
8184           },
8185           "additionalProperties": false,
8186           "required": [
8187             "Tag",
8188             "PublicAddress",
8189             "Series"
8190           ]
8191         },
8192         "Macaroon": {
8193           "type": "object",
8194           "properties": {
8195             "caveats": {
8196               "type": "array",
8197               "items": {
8198                 "$ref": "#/definitions/caveat"
8199               }
8200             },
8201             "data": {
8202               "type": "array",
8203               "items": {
8204                 "type": "integer"
8205               }
8206             },
8207             "id": {
8208               "$ref": "#/definitions/packet"
8209             },
8210             "location": {
8211               "$ref": "#/definitions/packet"
8212             },
8213             "sig": {
8214               "type": "array",
8215               "items": {
8216                 "type": "integer"
8217               }
8218             }
8219           },
8220           "additionalProperties": false,
8221           "required": [
8222             "data",
8223             "location",
8224             "id",
8225             "caveats",
8226             "sig"
8227           ]
8228         },
8229         "Member": {
8230           "type": "object",
8231           "properties": {
8232             "Address": {
8233               "type": "string"
8234             },
8235             "Arbiter": {
8236               "type": "boolean"
8237             },
8238             "BuildIndexes": {
8239               "type": "boolean"
8240             },
8241             "Hidden": {
8242               "type": "boolean"
8243             },
8244             "Id": {
8245               "type": "integer"
8246             },
8247             "Priority": {
8248               "type": "number"
8249             },
8250             "SlaveDelay": {
8251               "type": "integer"
8252             },
8253             "Tags": {
8254               "type": "object",
8255               "patternProperties": {
8256                 ".*": {
8257                   "type": "string"
8258                 }
8259               }
8260             },
8261             "Votes": {
8262               "type": "integer"
8263             }
8264           },
8265           "additionalProperties": false,
8266           "required": [
8267             "Id",
8268             "Address",
8269             "Arbiter",
8270             "BuildIndexes",
8271             "Hidden",
8272             "Priority",
8273             "Tags",
8274             "SlaveDelay",
8275             "Votes"
8276           ]
8277         },
8278         "MongoUpgradeResults": {
8279           "type": "object",
8280           "properties": {
8281             "Master": {
8282               "$ref": "#/definitions/HAMember"
8283             },
8284             "Members": {
8285               "type": "array",
8286               "items": {
8287                 "$ref": "#/definitions/HAMember"
8288               }
8289             },
8290             "RsMembers": {
8291               "type": "array",
8292               "items": {
8293                 "$ref": "#/definitions/Member"
8294               }
8295             }
8296           },
8297           "additionalProperties": false,
8298           "required": [
8299             "RsMembers",
8300             "Master",
8301             "Members"
8302           ]
8303         },
8304         "ResumeReplicationParams": {
8305           "type": "object",
8306           "properties": {
8307             "Members": {
8308               "type": "array",
8309               "items": {
8310                 "$ref": "#/definitions/Member"
8311               }
8312             }
8313           },
8314           "additionalProperties": false,
8315           "required": [
8316             "Members"
8317           ]
8318         },
8319         "UpgradeMongoParams": {
8320           "type": "object",
8321           "properties": {
8322             "Target": {
8323               "$ref": "#/definitions/Version"
8324             }
8325           },
8326           "additionalProperties": false,
8327           "required": [
8328             "Target"
8329           ]
8330         },
8331         "Value": {
8332           "type": "object",
8333           "properties": {
8334             "arch": {
8335               "type": "string"
8336             },
8337             "container": {
8338               "type": "string"
8339             },
8340             "cpu-cores": {
8341               "type": "integer"
8342             },
8343             "cpu-power": {
8344               "type": "integer"
8345             },
8346             "instance-type": {
8347               "type": "string"
8348             },
8349             "mem": {
8350               "type": "integer"
8351             },
8352             "root-disk": {
8353               "type": "integer"
8354             },
8355             "spaces": {
8356               "type": "array",
8357               "items": {
8358                 "type": "string"
8359               }
8360             },
8361             "tags": {
8362               "type": "array",
8363               "items": {
8364                 "type": "string"
8365               }
8366             },
8367             "virt-type": {
8368               "type": "string"
8369             }
8370           },
8371           "additionalProperties": false
8372         },
8373         "Version": {
8374           "type": "object",
8375           "properties": {
8376             "Major": {
8377               "type": "integer"
8378             },
8379             "Minor": {
8380               "type": "integer"
8381             },
8382             "Patch": {
8383               "type": "string"
8384             },
8385             "StorageEngine": {
8386               "type": "string"
8387             }
8388           },
8389           "additionalProperties": false,
8390           "required": [
8391             "Major",
8392             "Minor",
8393             "Patch",
8394             "StorageEngine"
8395           ]
8396         },
8397         "caveat": {
8398           "type": "object",
8399           "properties": {
8400             "caveatId": {
8401               "$ref": "#/definitions/packet"
8402             },
8403             "location": {
8404               "$ref": "#/definitions/packet"
8405             },
8406             "verificationId": {
8407               "$ref": "#/definitions/packet"
8408             }
8409           },
8410           "additionalProperties": false,
8411           "required": [
8412             "location",
8413             "caveatId",
8414             "verificationId"
8415           ]
8416         },
8417         "packet": {
8418           "type": "object",
8419           "properties": {
8420             "headerLen": {
8421               "type": "integer"
8422             },
8423             "start": {
8424               "type": "integer"
8425             },
8426             "totalLen": {
8427               "type": "integer"
8428             }
8429           },
8430           "additionalProperties": false,
8431           "required": [
8432             "start",
8433             "totalLen",
8434             "headerLen"
8435           ]
8436         }
8437       }
8438     }
8439   },
8440   {
8441     "Name": "HostKeyReporter",
8442     "Version": 1,
8443     "Schema": {
8444       "type": "object",
8445       "properties": {
8446         "ReportKeys": {
8447           "type": "object",
8448           "properties": {
8449             "Params": {
8450               "$ref": "#/definitions/SSHHostKeySet"
8451             },
8452             "Result": {
8453               "$ref": "#/definitions/ErrorResults"
8454             }
8455           }
8456         }
8457       },
8458       "definitions": {
8459         "Error": {
8460           "type": "object",
8461           "properties": {
8462             "Code": {
8463               "type": "string"
8464             },
8465             "Info": {
8466               "$ref": "#/definitions/ErrorInfo"
8467             },
8468             "Message": {
8469               "type": "string"
8470             }
8471           },
8472           "additionalProperties": false,
8473           "required": [
8474             "Message",
8475             "Code"
8476           ]
8477         },
8478         "ErrorInfo": {
8479           "type": "object",
8480           "properties": {
8481             "Macaroon": {
8482               "$ref": "#/definitions/Macaroon"
8483             },
8484             "MacaroonPath": {
8485               "type": "string"
8486             }
8487           },
8488           "additionalProperties": false
8489         },
8490         "ErrorResult": {
8491           "type": "object",
8492           "properties": {
8493             "Error": {
8494               "$ref": "#/definitions/Error"
8495             }
8496           },
8497           "additionalProperties": false,
8498           "required": [
8499             "Error"
8500           ]
8501         },
8502         "ErrorResults": {
8503           "type": "object",
8504           "properties": {
8505             "Results": {
8506               "type": "array",
8507               "items": {
8508                 "$ref": "#/definitions/ErrorResult"
8509               }
8510             }
8511           },
8512           "additionalProperties": false,
8513           "required": [
8514             "Results"
8515           ]
8516         },
8517         "Macaroon": {
8518           "type": "object",
8519           "properties": {
8520             "caveats": {
8521               "type": "array",
8522               "items": {
8523                 "$ref": "#/definitions/caveat"
8524               }
8525             },
8526             "data": {
8527               "type": "array",
8528               "items": {
8529                 "type": "integer"
8530               }
8531             },
8532             "id": {
8533               "$ref": "#/definitions/packet"
8534             },
8535             "location": {
8536               "$ref": "#/definitions/packet"
8537             },
8538             "sig": {
8539               "type": "array",
8540               "items": {
8541                 "type": "integer"
8542               }
8543             }
8544           },
8545           "additionalProperties": false,
8546           "required": [
8547             "data",
8548             "location",
8549             "id",
8550             "caveats",
8551             "sig"
8552           ]
8553         },
8554         "SSHHostKeySet": {
8555           "type": "object",
8556           "properties": {
8557             "entity-keys": {
8558               "type": "array",
8559               "items": {
8560                 "$ref": "#/definitions/SSHHostKeys"
8561               }
8562             }
8563           },
8564           "additionalProperties": false,
8565           "required": [
8566             "entity-keys"
8567           ]
8568         },
8569         "SSHHostKeys": {
8570           "type": "object",
8571           "properties": {
8572             "public-keys": {
8573               "type": "array",
8574               "items": {
8575                 "type": "string"
8576               }
8577             },
8578             "tag": {
8579               "type": "string"
8580             }
8581           },
8582           "additionalProperties": false,
8583           "required": [
8584             "tag",
8585             "public-keys"
8586           ]
8587         },
8588         "caveat": {
8589           "type": "object",
8590           "properties": {
8591             "caveatId": {
8592               "$ref": "#/definitions/packet"
8593             },
8594             "location": {
8595               "$ref": "#/definitions/packet"
8596             },
8597             "verificationId": {
8598               "$ref": "#/definitions/packet"
8599             }
8600           },
8601           "additionalProperties": false,
8602           "required": [
8603             "location",
8604             "caveatId",
8605             "verificationId"
8606           ]
8607         },
8608         "packet": {
8609           "type": "object",
8610           "properties": {
8611             "headerLen": {
8612               "type": "integer"
8613             },
8614             "start": {
8615               "type": "integer"
8616             },
8617             "totalLen": {
8618               "type": "integer"
8619             }
8620           },
8621           "additionalProperties": false,
8622           "required": [
8623             "start",
8624             "totalLen",
8625             "headerLen"
8626           ]
8627         }
8628       }
8629     }
8630   },
8631   {
8632     "Name": "ImageManager",
8633     "Version": 2,
8634     "Schema": {
8635       "type": "object",
8636       "properties": {
8637         "DeleteImages": {
8638           "type": "object",
8639           "properties": {
8640             "Params": {
8641               "$ref": "#/definitions/ImageFilterParams"
8642             },
8643             "Result": {
8644               "$ref": "#/definitions/ErrorResults"
8645             }
8646           }
8647         },
8648         "ListImages": {
8649           "type": "object",
8650           "properties": {
8651             "Params": {
8652               "$ref": "#/definitions/ImageFilterParams"
8653             },
8654             "Result": {
8655               "$ref": "#/definitions/ListImageResult"
8656             }
8657           }
8658         }
8659       },
8660       "definitions": {
8661         "Error": {
8662           "type": "object",
8663           "properties": {
8664             "Code": {
8665               "type": "string"
8666             },
8667             "Info": {
8668               "$ref": "#/definitions/ErrorInfo"
8669             },
8670             "Message": {
8671               "type": "string"
8672             }
8673           },
8674           "additionalProperties": false,
8675           "required": [
8676             "Message",
8677             "Code"
8678           ]
8679         },
8680         "ErrorInfo": {
8681           "type": "object",
8682           "properties": {
8683             "Macaroon": {
8684               "$ref": "#/definitions/Macaroon"
8685             },
8686             "MacaroonPath": {
8687               "type": "string"
8688             }
8689           },
8690           "additionalProperties": false
8691         },
8692         "ErrorResult": {
8693           "type": "object",
8694           "properties": {
8695             "Error": {
8696               "$ref": "#/definitions/Error"
8697             }
8698           },
8699           "additionalProperties": false,
8700           "required": [
8701             "Error"
8702           ]
8703         },
8704         "ErrorResults": {
8705           "type": "object",
8706           "properties": {
8707             "Results": {
8708               "type": "array",
8709               "items": {
8710                 "$ref": "#/definitions/ErrorResult"
8711               }
8712             }
8713           },
8714           "additionalProperties": false,
8715           "required": [
8716             "Results"
8717           ]
8718         },
8719         "ImageFilterParams": {
8720           "type": "object",
8721           "properties": {
8722             "images": {
8723               "type": "array",
8724               "items": {
8725                 "$ref": "#/definitions/ImageSpec"
8726               }
8727             }
8728           },
8729           "additionalProperties": false,
8730           "required": [
8731             "images"
8732           ]
8733         },
8734         "ImageMetadata": {
8735           "type": "object",
8736           "properties": {
8737             "arch": {
8738               "type": "string"
8739             },
8740             "created": {
8741               "type": "string",
8742               "format": "date-time"
8743             },
8744             "kind": {
8745               "type": "string"
8746             },
8747             "series": {
8748               "type": "string"
8749             },
8750             "url": {
8751               "type": "string"
8752             }
8753           },
8754           "additionalProperties": false,
8755           "required": [
8756             "kind",
8757             "arch",
8758             "series",
8759             "url",
8760             "created"
8761           ]
8762         },
8763         "ImageSpec": {
8764           "type": "object",
8765           "properties": {
8766             "arch": {
8767               "type": "string"
8768             },
8769             "kind": {
8770               "type": "string"
8771             },
8772             "series": {
8773               "type": "string"
8774             }
8775           },
8776           "additionalProperties": false,
8777           "required": [
8778             "kind",
8779             "arch",
8780             "series"
8781           ]
8782         },
8783         "ListImageResult": {
8784           "type": "object",
8785           "properties": {
8786             "result": {
8787               "type": "array",
8788               "items": {
8789                 "$ref": "#/definitions/ImageMetadata"
8790               }
8791             }
8792           },
8793           "additionalProperties": false,
8794           "required": [
8795             "result"
8796           ]
8797         },
8798         "Macaroon": {
8799           "type": "object",
8800           "properties": {
8801             "caveats": {
8802               "type": "array",
8803               "items": {
8804                 "$ref": "#/definitions/caveat"
8805               }
8806             },
8807             "data": {
8808               "type": "array",
8809               "items": {
8810                 "type": "integer"
8811               }
8812             },
8813             "id": {
8814               "$ref": "#/definitions/packet"
8815             },
8816             "location": {
8817               "$ref": "#/definitions/packet"
8818             },
8819             "sig": {
8820               "type": "array",
8821               "items": {
8822                 "type": "integer"
8823               }
8824             }
8825           },
8826           "additionalProperties": false,
8827           "required": [
8828             "data",
8829             "location",
8830             "id",
8831             "caveats",
8832             "sig"
8833           ]
8834         },
8835         "caveat": {
8836           "type": "object",
8837           "properties": {
8838             "caveatId": {
8839               "$ref": "#/definitions/packet"
8840             },
8841             "location": {
8842               "$ref": "#/definitions/packet"
8843             },
8844             "verificationId": {
8845               "$ref": "#/definitions/packet"
8846             }
8847           },
8848           "additionalProperties": false,
8849           "required": [
8850             "location",
8851             "caveatId",
8852             "verificationId"
8853           ]
8854         },
8855         "packet": {
8856           "type": "object",
8857           "properties": {
8858             "headerLen": {
8859               "type": "integer"
8860             },
8861             "start": {
8862               "type": "integer"
8863             },
8864             "totalLen": {
8865               "type": "integer"
8866             }
8867           },
8868           "additionalProperties": false,
8869           "required": [
8870             "start",
8871             "totalLen",
8872             "headerLen"
8873           ]
8874         }
8875       }
8876     }
8877   },
8878   {
8879     "Name": "ImageMetadata",
8880     "Version": 2,
8881     "Schema": {
8882       "type": "object",
8883       "properties": {
8884         "Delete": {
8885           "type": "object",
8886           "properties": {
8887             "Params": {
8888               "$ref": "#/definitions/MetadataImageIds"
8889             },
8890             "Result": {
8891               "$ref": "#/definitions/ErrorResults"
8892             }
8893           }
8894         },
8895         "List": {
8896           "type": "object",
8897           "properties": {
8898             "Params": {
8899               "$ref": "#/definitions/ImageMetadataFilter"
8900             },
8901             "Result": {
8902               "$ref": "#/definitions/ListCloudImageMetadataResult"
8903             }
8904           }
8905         },
8906         "Save": {
8907           "type": "object",
8908           "properties": {
8909             "Params": {
8910               "$ref": "#/definitions/MetadataSaveParams"
8911             },
8912             "Result": {
8913               "$ref": "#/definitions/ErrorResults"
8914             }
8915           }
8916         },
8917         "UpdateFromPublishedImages": {
8918           "type": "object"
8919         }
8920       },
8921       "definitions": {
8922         "CloudImageMetadata": {
8923           "type": "object",
8924           "properties": {
8925             "arch": {
8926               "type": "string"
8927             },
8928             "image_id": {
8929               "type": "string"
8930             },
8931             "priority": {
8932               "type": "integer"
8933             },
8934             "region": {
8935               "type": "string"
8936             },
8937             "root_storage_size": {
8938               "type": "integer"
8939             },
8940             "root_storage_type": {
8941               "type": "string"
8942             },
8943             "series": {
8944               "type": "string"
8945             },
8946             "source": {
8947               "type": "string"
8948             },
8949             "stream": {
8950               "type": "string"
8951             },
8952             "version": {
8953               "type": "string"
8954             },
8955             "virt_type": {
8956               "type": "string"
8957             }
8958           },
8959           "additionalProperties": false,
8960           "required": [
8961             "image_id",
8962             "region",
8963             "version",
8964             "series",
8965             "arch",
8966             "source",
8967             "priority"
8968           ]
8969         },
8970         "CloudImageMetadataList": {
8971           "type": "object",
8972           "properties": {
8973             "metadata": {
8974               "type": "array",
8975               "items": {
8976                 "$ref": "#/definitions/CloudImageMetadata"
8977               }
8978             }
8979           },
8980           "additionalProperties": false
8981         },
8982         "Error": {
8983           "type": "object",
8984           "properties": {
8985             "Code": {
8986               "type": "string"
8987             },
8988             "Info": {
8989               "$ref": "#/definitions/ErrorInfo"
8990             },
8991             "Message": {
8992               "type": "string"
8993             }
8994           },
8995           "additionalProperties": false,
8996           "required": [
8997             "Message",
8998             "Code"
8999           ]
9000         },
9001         "ErrorInfo": {
9002           "type": "object",
9003           "properties": {
9004             "Macaroon": {
9005               "$ref": "#/definitions/Macaroon"
9006             },
9007             "MacaroonPath": {
9008               "type": "string"
9009             }
9010           },
9011           "additionalProperties": false
9012         },
9013         "ErrorResult": {
9014           "type": "object",
9015           "properties": {
9016             "Error": {
9017               "$ref": "#/definitions/Error"
9018             }
9019           },
9020           "additionalProperties": false,
9021           "required": [
9022             "Error"
9023           ]
9024         },
9025         "ErrorResults": {
9026           "type": "object",
9027           "properties": {
9028             "Results": {
9029               "type": "array",
9030               "items": {
9031                 "$ref": "#/definitions/ErrorResult"
9032               }
9033             }
9034           },
9035           "additionalProperties": false,
9036           "required": [
9037             "Results"
9038           ]
9039         },
9040         "ImageMetadataFilter": {
9041           "type": "object",
9042           "properties": {
9043             "arches": {
9044               "type": "array",
9045               "items": {
9046                 "type": "string"
9047               }
9048             },
9049             "region": {
9050               "type": "string"
9051             },
9052             "root-storage-type": {
9053               "type": "string"
9054             },
9055             "series": {
9056               "type": "array",
9057               "items": {
9058                 "type": "string"
9059               }
9060             },
9061             "stream": {
9062               "type": "string"
9063             },
9064             "virt_type": {
9065               "type": "string"
9066             }
9067           },
9068           "additionalProperties": false
9069         },
9070         "ListCloudImageMetadataResult": {
9071           "type": "object",
9072           "properties": {
9073             "result": {
9074               "type": "array",
9075               "items": {
9076                 "$ref": "#/definitions/CloudImageMetadata"
9077               }
9078             }
9079           },
9080           "additionalProperties": false,
9081           "required": [
9082             "result"
9083           ]
9084         },
9085         "Macaroon": {
9086           "type": "object",
9087           "properties": {
9088             "caveats": {
9089               "type": "array",
9090               "items": {
9091                 "$ref": "#/definitions/caveat"
9092               }
9093             },
9094             "data": {
9095               "type": "array",
9096               "items": {
9097                 "type": "integer"
9098               }
9099             },
9100             "id": {
9101               "$ref": "#/definitions/packet"
9102             },
9103             "location": {
9104               "$ref": "#/definitions/packet"
9105             },
9106             "sig": {
9107               "type": "array",
9108               "items": {
9109                 "type": "integer"
9110               }
9111             }
9112           },
9113           "additionalProperties": false,
9114           "required": [
9115             "data",
9116             "location",
9117             "id",
9118             "caveats",
9119             "sig"
9120           ]
9121         },
9122         "MetadataImageIds": {
9123           "type": "object",
9124           "properties": {
9125             "image_ids": {
9126               "type": "array",
9127               "items": {
9128                 "type": "string"
9129               }
9130             }
9131           },
9132           "additionalProperties": false,
9133           "required": [
9134             "image_ids"
9135           ]
9136         },
9137         "MetadataSaveParams": {
9138           "type": "object",
9139           "properties": {
9140             "metadata": {
9141               "type": "array",
9142               "items": {
9143                 "$ref": "#/definitions/CloudImageMetadataList"
9144               }
9145             }
9146           },
9147           "additionalProperties": false
9148         },
9149         "caveat": {
9150           "type": "object",
9151           "properties": {
9152             "caveatId": {
9153               "$ref": "#/definitions/packet"
9154             },
9155             "location": {
9156               "$ref": "#/definitions/packet"
9157             },
9158             "verificationId": {
9159               "$ref": "#/definitions/packet"
9160             }
9161           },
9162           "additionalProperties": false,
9163           "required": [
9164             "location",
9165             "caveatId",
9166             "verificationId"
9167           ]
9168         },
9169         "packet": {
9170           "type": "object",
9171           "properties": {
9172             "headerLen": {
9173               "type": "integer"
9174             },
9175             "start": {
9176               "type": "integer"
9177             },
9178             "totalLen": {
9179               "type": "integer"
9180             }
9181           },
9182           "additionalProperties": false,
9183           "required": [
9184             "start",
9185             "totalLen",
9186             "headerLen"
9187           ]
9188         }
9189       }
9190     }
9191   },
9192   {
9193     "Name": "InstancePoller",
9194     "Version": 3,
9195     "Schema": {
9196       "type": "object",
9197       "properties": {
9198         "AreManuallyProvisioned": {
9199           "type": "object",
9200           "properties": {
9201             "Params": {
9202               "$ref": "#/definitions/Entities"
9203             },
9204             "Result": {
9205               "$ref": "#/definitions/BoolResults"
9206             }
9207           }
9208         },
9209         "InstanceId": {
9210           "type": "object",
9211           "properties": {
9212             "Params": {
9213               "$ref": "#/definitions/Entities"
9214             },
9215             "Result": {
9216               "$ref": "#/definitions/StringResults"
9217             }
9218           }
9219         },
9220         "InstanceStatus": {
9221           "type": "object",
9222           "properties": {
9223             "Params": {
9224               "$ref": "#/definitions/Entities"
9225             },
9226             "Result": {
9227               "$ref": "#/definitions/StatusResults"
9228             }
9229           }
9230         },
9231         "Life": {
9232           "type": "object",
9233           "properties": {
9234             "Params": {
9235               "$ref": "#/definitions/Entities"
9236             },
9237             "Result": {
9238               "$ref": "#/definitions/LifeResults"
9239             }
9240           }
9241         },
9242         "ModelConfig": {
9243           "type": "object",
9244           "properties": {
9245             "Result": {
9246               "$ref": "#/definitions/ModelConfigResult"
9247             }
9248           }
9249         },
9250         "ProviderAddresses": {
9251           "type": "object",
9252           "properties": {
9253             "Params": {
9254               "$ref": "#/definitions/Entities"
9255             },
9256             "Result": {
9257               "$ref": "#/definitions/MachineAddressesResults"
9258             }
9259           }
9260         },
9261         "SetInstanceStatus": {
9262           "type": "object",
9263           "properties": {
9264             "Params": {
9265               "$ref": "#/definitions/SetStatus"
9266             },
9267             "Result": {
9268               "$ref": "#/definitions/ErrorResults"
9269             }
9270           }
9271         },
9272         "SetProviderAddresses": {
9273           "type": "object",
9274           "properties": {
9275             "Params": {
9276               "$ref": "#/definitions/SetMachinesAddresses"
9277             },
9278             "Result": {
9279               "$ref": "#/definitions/ErrorResults"
9280             }
9281           }
9282         },
9283         "Status": {
9284           "type": "object",
9285           "properties": {
9286             "Params": {
9287               "$ref": "#/definitions/Entities"
9288             },
9289             "Result": {
9290               "$ref": "#/definitions/StatusResults"
9291             }
9292           }
9293         },
9294         "WatchForModelConfigChanges": {
9295           "type": "object",
9296           "properties": {
9297             "Result": {
9298               "$ref": "#/definitions/NotifyWatchResult"
9299             }
9300           }
9301         },
9302         "WatchModelMachines": {
9303           "type": "object",
9304           "properties": {
9305             "Result": {
9306               "$ref": "#/definitions/StringsWatchResult"
9307             }
9308           }
9309         }
9310       },
9311       "definitions": {
9312         "Address": {
9313           "type": "object",
9314           "properties": {
9315             "Scope": {
9316               "type": "string"
9317             },
9318             "SpaceName": {
9319               "type": "string"
9320             },
9321             "Type": {
9322               "type": "string"
9323             },
9324             "Value": {
9325               "type": "string"
9326             }
9327           },
9328           "additionalProperties": false,
9329           "required": [
9330             "Value",
9331             "Type",
9332             "Scope"
9333           ]
9334         },
9335         "BoolResult": {
9336           "type": "object",
9337           "properties": {
9338             "Error": {
9339               "$ref": "#/definitions/Error"
9340             },
9341             "Result": {
9342               "type": "boolean"
9343             }
9344           },
9345           "additionalProperties": false,
9346           "required": [
9347             "Error",
9348             "Result"
9349           ]
9350         },
9351         "BoolResults": {
9352           "type": "object",
9353           "properties": {
9354             "Results": {
9355               "type": "array",
9356               "items": {
9357                 "$ref": "#/definitions/BoolResult"
9358               }
9359             }
9360           },
9361           "additionalProperties": false,
9362           "required": [
9363             "Results"
9364           ]
9365         },
9366         "Entities": {
9367           "type": "object",
9368           "properties": {
9369             "Entities": {
9370               "type": "array",
9371               "items": {
9372                 "$ref": "#/definitions/Entity"
9373               }
9374             }
9375           },
9376           "additionalProperties": false,
9377           "required": [
9378             "Entities"
9379           ]
9380         },
9381         "Entity": {
9382           "type": "object",
9383           "properties": {
9384             "Tag": {
9385               "type": "string"
9386             }
9387           },
9388           "additionalProperties": false,
9389           "required": [
9390             "Tag"
9391           ]
9392         },
9393         "EntityStatusArgs": {
9394           "type": "object",
9395           "properties": {
9396             "Data": {
9397               "type": "object",
9398               "patternProperties": {
9399                 ".*": {
9400                   "type": "object",
9401                   "additionalProperties": true
9402                 }
9403               }
9404             },
9405             "Info": {
9406               "type": "string"
9407             },
9408             "Status": {
9409               "type": "string"
9410             },
9411             "Tag": {
9412               "type": "string"
9413             }
9414           },
9415           "additionalProperties": false,
9416           "required": [
9417             "Tag",
9418             "Status",
9419             "Info",
9420             "Data"
9421           ]
9422         },
9423         "Error": {
9424           "type": "object",
9425           "properties": {
9426             "Code": {
9427               "type": "string"
9428             },
9429             "Info": {
9430               "$ref": "#/definitions/ErrorInfo"
9431             },
9432             "Message": {
9433               "type": "string"
9434             }
9435           },
9436           "additionalProperties": false,
9437           "required": [
9438             "Message",
9439             "Code"
9440           ]
9441         },
9442         "ErrorInfo": {
9443           "type": "object",
9444           "properties": {
9445             "Macaroon": {
9446               "$ref": "#/definitions/Macaroon"
9447             },
9448             "MacaroonPath": {
9449               "type": "string"
9450             }
9451           },
9452           "additionalProperties": false
9453         },
9454         "ErrorResult": {
9455           "type": "object",
9456           "properties": {
9457             "Error": {
9458               "$ref": "#/definitions/Error"
9459             }
9460           },
9461           "additionalProperties": false,
9462           "required": [
9463             "Error"
9464           ]
9465         },
9466         "ErrorResults": {
9467           "type": "object",
9468           "properties": {
9469             "Results": {
9470               "type": "array",
9471               "items": {
9472                 "$ref": "#/definitions/ErrorResult"
9473               }
9474             }
9475           },
9476           "additionalProperties": false,
9477           "required": [
9478             "Results"
9479           ]
9480         },
9481         "LifeResult": {
9482           "type": "object",
9483           "properties": {
9484             "Error": {
9485               "$ref": "#/definitions/Error"
9486             },
9487             "Life": {
9488               "type": "string"
9489             }
9490           },
9491           "additionalProperties": false,
9492           "required": [
9493             "Life",
9494             "Error"
9495           ]
9496         },
9497         "LifeResults": {
9498           "type": "object",
9499           "properties": {
9500             "Results": {
9501               "type": "array",
9502               "items": {
9503                 "$ref": "#/definitions/LifeResult"
9504               }
9505             }
9506           },
9507           "additionalProperties": false,
9508           "required": [
9509             "Results"
9510           ]
9511         },
9512         "Macaroon": {
9513           "type": "object",
9514           "properties": {
9515             "caveats": {
9516               "type": "array",
9517               "items": {
9518                 "$ref": "#/definitions/caveat"
9519               }
9520             },
9521             "data": {
9522               "type": "array",
9523               "items": {
9524                 "type": "integer"
9525               }
9526             },
9527             "id": {
9528               "$ref": "#/definitions/packet"
9529             },
9530             "location": {
9531               "$ref": "#/definitions/packet"
9532             },
9533             "sig": {
9534               "type": "array",
9535               "items": {
9536                 "type": "integer"
9537               }
9538             }
9539           },
9540           "additionalProperties": false,
9541           "required": [
9542             "data",
9543             "location",
9544             "id",
9545             "caveats",
9546             "sig"
9547           ]
9548         },
9549         "MachineAddresses": {
9550           "type": "object",
9551           "properties": {
9552             "Addresses": {
9553               "type": "array",
9554               "items": {
9555                 "$ref": "#/definitions/Address"
9556               }
9557             },
9558             "Tag": {
9559               "type": "string"
9560             }
9561           },
9562           "additionalProperties": false,
9563           "required": [
9564             "Tag",
9565             "Addresses"
9566           ]
9567         },
9568         "MachineAddressesResult": {
9569           "type": "object",
9570           "properties": {
9571             "Addresses": {
9572               "type": "array",
9573               "items": {
9574                 "$ref": "#/definitions/Address"
9575               }
9576             },
9577             "Error": {
9578               "$ref": "#/definitions/Error"
9579             }
9580           },
9581           "additionalProperties": false,
9582           "required": [
9583             "Error",
9584             "Addresses"
9585           ]
9586         },
9587         "MachineAddressesResults": {
9588           "type": "object",
9589           "properties": {
9590             "Results": {
9591               "type": "array",
9592               "items": {
9593                 "$ref": "#/definitions/MachineAddressesResult"
9594               }
9595             }
9596           },
9597           "additionalProperties": false,
9598           "required": [
9599             "Results"
9600           ]
9601         },
9602         "ModelConfigResult": {
9603           "type": "object",
9604           "properties": {
9605             "Config": {
9606               "type": "object",
9607               "patternProperties": {
9608                 ".*": {
9609                   "type": "object",
9610                   "additionalProperties": true
9611                 }
9612               }
9613             }
9614           },
9615           "additionalProperties": false,
9616           "required": [
9617             "Config"
9618           ]
9619         },
9620         "NotifyWatchResult": {
9621           "type": "object",
9622           "properties": {
9623             "Error": {
9624               "$ref": "#/definitions/Error"
9625             },
9626             "NotifyWatcherId": {
9627               "type": "string"
9628             }
9629           },
9630           "additionalProperties": false,
9631           "required": [
9632             "NotifyWatcherId",
9633             "Error"
9634           ]
9635         },
9636         "SetMachinesAddresses": {
9637           "type": "object",
9638           "properties": {
9639             "MachineAddresses": {
9640               "type": "array",
9641               "items": {
9642                 "$ref": "#/definitions/MachineAddresses"
9643               }
9644             }
9645           },
9646           "additionalProperties": false,
9647           "required": [
9648             "MachineAddresses"
9649           ]
9650         },
9651         "SetStatus": {
9652           "type": "object",
9653           "properties": {
9654             "Entities": {
9655               "type": "array",
9656               "items": {
9657                 "$ref": "#/definitions/EntityStatusArgs"
9658               }
9659             }
9660           },
9661           "additionalProperties": false,
9662           "required": [
9663             "Entities"
9664           ]
9665         },
9666         "StatusResult": {
9667           "type": "object",
9668           "properties": {
9669             "Data": {
9670               "type": "object",
9671               "patternProperties": {
9672                 ".*": {
9673                   "type": "object",
9674                   "additionalProperties": true
9675                 }
9676               }
9677             },
9678             "Error": {
9679               "$ref": "#/definitions/Error"
9680             },
9681             "Id": {
9682               "type": "string"
9683             },
9684             "Info": {
9685               "type": "string"
9686             },
9687             "Life": {
9688               "type": "string"
9689             },
9690             "Since": {
9691               "type": "string",
9692               "format": "date-time"
9693             },
9694             "Status": {
9695               "type": "string"
9696             }
9697           },
9698           "additionalProperties": false,
9699           "required": [
9700             "Error",
9701             "Id",
9702             "Life",
9703             "Status",
9704             "Info",
9705             "Data",
9706             "Since"
9707           ]
9708         },
9709         "StatusResults": {
9710           "type": "object",
9711           "properties": {
9712             "Results": {
9713               "type": "array",
9714               "items": {
9715                 "$ref": "#/definitions/StatusResult"
9716               }
9717             }
9718           },
9719           "additionalProperties": false,
9720           "required": [
9721             "Results"
9722           ]
9723         },
9724         "StringResult": {
9725           "type": "object",
9726           "properties": {
9727             "Error": {
9728               "$ref": "#/definitions/Error"
9729             },
9730             "Result": {
9731               "type": "string"
9732             }
9733           },
9734           "additionalProperties": false,
9735           "required": [
9736             "Error",
9737             "Result"
9738           ]
9739         },
9740         "StringResults": {
9741           "type": "object",
9742           "properties": {
9743             "Results": {
9744               "type": "array",
9745               "items": {
9746                 "$ref": "#/definitions/StringResult"
9747               }
9748             }
9749           },
9750           "additionalProperties": false,
9751           "required": [
9752             "Results"
9753           ]
9754         },
9755         "StringsWatchResult": {
9756           "type": "object",
9757           "properties": {
9758             "Changes": {
9759               "type": "array",
9760               "items": {
9761                 "type": "string"
9762               }
9763             },
9764             "Error": {
9765               "$ref": "#/definitions/Error"
9766             },
9767             "StringsWatcherId": {
9768               "type": "string"
9769             }
9770           },
9771           "additionalProperties": false,
9772           "required": [
9773             "StringsWatcherId",
9774             "Changes",
9775             "Error"
9776           ]
9777         },
9778         "caveat": {
9779           "type": "object",
9780           "properties": {
9781             "caveatId": {
9782               "$ref": "#/definitions/packet"
9783             },
9784             "location": {
9785               "$ref": "#/definitions/packet"
9786             },
9787             "verificationId": {
9788               "$ref": "#/definitions/packet"
9789             }
9790           },
9791           "additionalProperties": false,
9792           "required": [
9793             "location",
9794             "caveatId",
9795             "verificationId"
9796           ]
9797         },
9798         "packet": {
9799           "type": "object",
9800           "properties": {
9801             "headerLen": {
9802               "type": "integer"
9803             },
9804             "start": {
9805               "type": "integer"
9806             },
9807             "totalLen": {
9808               "type": "integer"
9809             }
9810           },
9811           "additionalProperties": false,
9812           "required": [
9813             "start",
9814             "totalLen",
9815             "headerLen"
9816           ]
9817         }
9818       }
9819     }
9820   },
9821   {
9822     "Name": "KeyManager",
9823     "Version": 1,
9824     "Schema": {
9825       "type": "object",
9826       "properties": {
9827         "AddKeys": {
9828           "type": "object",
9829           "properties": {
9830             "Params": {
9831               "$ref": "#/definitions/ModifyUserSSHKeys"
9832             },
9833             "Result": {
9834               "$ref": "#/definitions/ErrorResults"
9835             }
9836           }
9837         },
9838         "DeleteKeys": {
9839           "type": "object",
9840           "properties": {
9841             "Params": {
9842               "$ref": "#/definitions/ModifyUserSSHKeys"
9843             },
9844             "Result": {
9845               "$ref": "#/definitions/ErrorResults"
9846             }
9847           }
9848         },
9849         "ImportKeys": {
9850           "type": "object",
9851           "properties": {
9852             "Params": {
9853               "$ref": "#/definitions/ModifyUserSSHKeys"
9854             },
9855             "Result": {
9856               "$ref": "#/definitions/ErrorResults"
9857             }
9858           }
9859         },
9860         "ListKeys": {
9861           "type": "object",
9862           "properties": {
9863             "Params": {
9864               "$ref": "#/definitions/ListSSHKeys"
9865             },
9866             "Result": {
9867               "$ref": "#/definitions/StringsResults"
9868             }
9869           }
9870         }
9871       },
9872       "definitions": {
9873         "Entities": {
9874           "type": "object",
9875           "properties": {
9876             "Entities": {
9877               "type": "array",
9878               "items": {
9879                 "$ref": "#/definitions/Entity"
9880               }
9881             }
9882           },
9883           "additionalProperties": false,
9884           "required": [
9885             "Entities"
9886           ]
9887         },
9888         "Entity": {
9889           "type": "object",
9890           "properties": {
9891             "Tag": {
9892               "type": "string"
9893             }
9894           },
9895           "additionalProperties": false,
9896           "required": [
9897             "Tag"
9898           ]
9899         },
9900         "Error": {
9901           "type": "object",
9902           "properties": {
9903             "Code": {
9904               "type": "string"
9905             },
9906             "Info": {
9907               "$ref": "#/definitions/ErrorInfo"
9908             },
9909             "Message": {
9910               "type": "string"
9911             }
9912           },
9913           "additionalProperties": false,
9914           "required": [
9915             "Message",
9916             "Code"
9917           ]
9918         },
9919         "ErrorInfo": {
9920           "type": "object",
9921           "properties": {
9922             "Macaroon": {
9923               "$ref": "#/definitions/Macaroon"
9924             },
9925             "MacaroonPath": {
9926               "type": "string"
9927             }
9928           },
9929           "additionalProperties": false
9930         },
9931         "ErrorResult": {
9932           "type": "object",
9933           "properties": {
9934             "Error": {
9935               "$ref": "#/definitions/Error"
9936             }
9937           },
9938           "additionalProperties": false,
9939           "required": [
9940             "Error"
9941           ]
9942         },
9943         "ErrorResults": {
9944           "type": "object",
9945           "properties": {
9946             "Results": {
9947               "type": "array",
9948               "items": {
9949                 "$ref": "#/definitions/ErrorResult"
9950               }
9951             }
9952           },
9953           "additionalProperties": false,
9954           "required": [
9955             "Results"
9956           ]
9957         },
9958         "ListSSHKeys": {
9959           "type": "object",
9960           "properties": {
9961             "Entities": {
9962               "$ref": "#/definitions/Entities"
9963             },
9964             "Mode": {
9965               "type": "boolean"
9966             }
9967           },
9968           "additionalProperties": false,
9969           "required": [
9970             "Entities",
9971             "Mode"
9972           ]
9973         },
9974         "Macaroon": {
9975           "type": "object",
9976           "properties": {
9977             "caveats": {
9978               "type": "array",
9979               "items": {
9980                 "$ref": "#/definitions/caveat"
9981               }
9982             },
9983             "data": {
9984               "type": "array",
9985               "items": {
9986                 "type": "integer"
9987               }
9988             },
9989             "id": {
9990               "$ref": "#/definitions/packet"
9991             },
9992             "location": {
9993               "$ref": "#/definitions/packet"
9994             },
9995             "sig": {
9996               "type": "array",
9997               "items": {
9998                 "type": "integer"
9999               }
10000             }
10001           },
10002           "additionalProperties": false,
10003           "required": [
10004             "data",
10005             "location",
10006             "id",
10007             "caveats",
10008             "sig"
10009           ]
10010         },
10011         "ModifyUserSSHKeys": {
10012           "type": "object",
10013           "properties": {
10014             "Keys": {
10015               "type": "array",
10016               "items": {
10017                 "type": "string"
10018               }
10019             },
10020             "User": {
10021               "type": "string"
10022             }
10023           },
10024           "additionalProperties": false,
10025           "required": [
10026             "User",
10027             "Keys"
10028           ]
10029         },
10030         "StringsResult": {
10031           "type": "object",
10032           "properties": {
10033             "Error": {
10034               "$ref": "#/definitions/Error"
10035             },
10036             "Result": {
10037               "type": "array",
10038               "items": {
10039                 "type": "string"
10040               }
10041             }
10042           },
10043           "additionalProperties": false,
10044           "required": [
10045             "Error",
10046             "Result"
10047           ]
10048         },
10049         "StringsResults": {
10050           "type": "object",
10051           "properties": {
10052             "Results": {
10053               "type": "array",
10054               "items": {
10055                 "$ref": "#/definitions/StringsResult"
10056               }
10057             }
10058           },
10059           "additionalProperties": false,
10060           "required": [
10061             "Results"
10062           ]
10063         },
10064         "caveat": {
10065           "type": "object",
10066           "properties": {
10067             "caveatId": {
10068               "$ref": "#/definitions/packet"
10069             },
10070             "location": {
10071               "$ref": "#/definitions/packet"
10072             },
10073             "verificationId": {
10074               "$ref": "#/definitions/packet"
10075             }
10076           },
10077           "additionalProperties": false,
10078           "required": [
10079             "location",
10080             "caveatId",
10081             "verificationId"
10082           ]
10083         },
10084         "packet": {
10085           "type": "object",
10086           "properties": {
10087             "headerLen": {
10088               "type": "integer"
10089             },
10090             "start": {
10091               "type": "integer"
10092             },
10093             "totalLen": {
10094               "type": "integer"
10095             }
10096           },
10097           "additionalProperties": false,
10098           "required": [
10099             "start",
10100             "totalLen",
10101             "headerLen"
10102           ]
10103         }
10104       }
10105     }
10106   },
10107   {
10108     "Name": "KeyUpdater",
10109     "Version": 1,
10110     "Schema": {
10111       "type": "object",
10112       "properties": {
10113         "AuthorisedKeys": {
10114           "type": "object",
10115           "properties": {
10116             "Params": {
10117               "$ref": "#/definitions/Entities"
10118             },
10119             "Result": {
10120               "$ref": "#/definitions/StringsResults"
10121             }
10122           }
10123         },
10124         "WatchAuthorisedKeys": {
10125           "type": "object",
10126           "properties": {
10127             "Params": {
10128               "$ref": "#/definitions/Entities"
10129             },
10130             "Result": {
10131               "$ref": "#/definitions/NotifyWatchResults"
10132             }
10133           }
10134         }
10135       },
10136       "definitions": {
10137         "Entities": {
10138           "type": "object",
10139           "properties": {
10140             "Entities": {
10141               "type": "array",
10142               "items": {
10143                 "$ref": "#/definitions/Entity"
10144               }
10145             }
10146           },
10147           "additionalProperties": false,
10148           "required": [
10149             "Entities"
10150           ]
10151         },
10152         "Entity": {
10153           "type": "object",
10154           "properties": {
10155             "Tag": {
10156               "type": "string"
10157             }
10158           },
10159           "additionalProperties": false,
10160           "required": [
10161             "Tag"
10162           ]
10163         },
10164         "Error": {
10165           "type": "object",
10166           "properties": {
10167             "Code": {
10168               "type": "string"
10169             },
10170             "Info": {
10171               "$ref": "#/definitions/ErrorInfo"
10172             },
10173             "Message": {
10174               "type": "string"
10175             }
10176           },
10177           "additionalProperties": false,
10178           "required": [
10179             "Message",
10180             "Code"
10181           ]
10182         },
10183         "ErrorInfo": {
10184           "type": "object",
10185           "properties": {
10186             "Macaroon": {
10187               "$ref": "#/definitions/Macaroon"
10188             },
10189             "MacaroonPath": {
10190               "type": "string"
10191             }
10192           },
10193           "additionalProperties": false
10194         },
10195         "Macaroon": {
10196           "type": "object",
10197           "properties": {
10198             "caveats": {
10199               "type": "array",
10200               "items": {
10201                 "$ref": "#/definitions/caveat"
10202               }
10203             },
10204             "data": {
10205               "type": "array",
10206               "items": {
10207                 "type": "integer"
10208               }
10209             },
10210             "id": {
10211               "$ref": "#/definitions/packet"
10212             },
10213             "location": {
10214               "$ref": "#/definitions/packet"
10215             },
10216             "sig": {
10217               "type": "array",
10218               "items": {
10219                 "type": "integer"
10220               }
10221             }
10222           },
10223           "additionalProperties": false,
10224           "required": [
10225             "data",
10226             "location",
10227             "id",
10228             "caveats",
10229             "sig"
10230           ]
10231         },
10232         "NotifyWatchResult": {
10233           "type": "object",
10234           "properties": {
10235             "Error": {
10236               "$ref": "#/definitions/Error"
10237             },
10238             "NotifyWatcherId": {
10239               "type": "string"
10240             }
10241           },
10242           "additionalProperties": false,
10243           "required": [
10244             "NotifyWatcherId",
10245             "Error"
10246           ]
10247         },
10248         "NotifyWatchResults": {
10249           "type": "object",
10250           "properties": {
10251             "Results": {
10252               "type": "array",
10253               "items": {
10254                 "$ref": "#/definitions/NotifyWatchResult"
10255               }
10256             }
10257           },
10258           "additionalProperties": false,
10259           "required": [
10260             "Results"
10261           ]
10262         },
10263         "StringsResult": {
10264           "type": "object",
10265           "properties": {
10266             "Error": {
10267               "$ref": "#/definitions/Error"
10268             },
10269             "Result": {
10270               "type": "array",
10271               "items": {
10272                 "type": "string"
10273               }
10274             }
10275           },
10276           "additionalProperties": false,
10277           "required": [
10278             "Error",
10279             "Result"
10280           ]
10281         },
10282         "StringsResults": {
10283           "type": "object",
10284           "properties": {
10285             "Results": {
10286               "type": "array",
10287               "items": {
10288                 "$ref": "#/definitions/StringsResult"
10289               }
10290             }
10291           },
10292           "additionalProperties": false,
10293           "required": [
10294             "Results"
10295           ]
10296         },
10297         "caveat": {
10298           "type": "object",
10299           "properties": {
10300             "caveatId": {
10301               "$ref": "#/definitions/packet"
10302             },
10303             "location": {
10304               "$ref": "#/definitions/packet"
10305             },
10306             "verificationId": {
10307               "$ref": "#/definitions/packet"
10308             }
10309           },
10310           "additionalProperties": false,
10311           "required": [
10312             "location",
10313             "caveatId",
10314             "verificationId"
10315           ]
10316         },
10317         "packet": {
10318           "type": "object",
10319           "properties": {
10320             "headerLen": {
10321               "type": "integer"
10322             },
10323             "start": {
10324               "type": "integer"
10325             },
10326             "totalLen": {
10327               "type": "integer"
10328             }
10329           },
10330           "additionalProperties": false,
10331           "required": [
10332             "start",
10333             "totalLen",
10334             "headerLen"
10335           ]
10336         }
10337       }
10338     }
10339   },
10340   {
10341     "Name": "LeadershipService",
10342     "Version": 2,
10343     "Schema": {
10344       "type": "object",
10345       "properties": {
10346         "BlockUntilLeadershipReleased": {
10347           "type": "object",
10348           "properties": {
10349             "Params": {
10350               "$ref": "#/definitions/ApplicationTag"
10351             },
10352             "Result": {
10353               "$ref": "#/definitions/ErrorResult"
10354             }
10355           }
10356         },
10357         "ClaimLeadership": {
10358           "type": "object",
10359           "properties": {
10360             "Params": {
10361               "$ref": "#/definitions/ClaimLeadershipBulkParams"
10362             },
10363             "Result": {
10364               "$ref": "#/definitions/ClaimLeadershipBulkResults"
10365             }
10366           }
10367         }
10368       },
10369       "definitions": {
10370         "ApplicationTag": {
10371           "type": "object",
10372           "properties": {
10373             "Name": {
10374               "type": "string"
10375             }
10376           },
10377           "additionalProperties": false,
10378           "required": [
10379             "Name"
10380           ]
10381         },
10382         "ClaimLeadershipBulkParams": {
10383           "type": "object",
10384           "properties": {
10385             "Params": {
10386               "type": "array",
10387               "items": {
10388                 "$ref": "#/definitions/ClaimLeadershipParams"
10389               }
10390             }
10391           },
10392           "additionalProperties": false,
10393           "required": [
10394             "Params"
10395           ]
10396         },
10397         "ClaimLeadershipBulkResults": {
10398           "type": "object",
10399           "properties": {
10400             "Results": {
10401               "type": "array",
10402               "items": {
10403                 "$ref": "#/definitions/ErrorResult"
10404               }
10405             }
10406           },
10407           "additionalProperties": false,
10408           "required": [
10409             "Results"
10410           ]
10411         },
10412         "ClaimLeadershipParams": {
10413           "type": "object",
10414           "properties": {
10415             "ApplicationTag": {
10416               "type": "string"
10417             },
10418             "DurationSeconds": {
10419               "type": "number"
10420             },
10421             "UnitTag": {
10422               "type": "string"
10423             }
10424           },
10425           "additionalProperties": false,
10426           "required": [
10427             "ApplicationTag",
10428             "UnitTag",
10429             "DurationSeconds"
10430           ]
10431         },
10432         "Error": {
10433           "type": "object",
10434           "properties": {
10435             "Code": {
10436               "type": "string"
10437             },
10438             "Info": {
10439               "$ref": "#/definitions/ErrorInfo"
10440             },
10441             "Message": {
10442               "type": "string"
10443             }
10444           },
10445           "additionalProperties": false,
10446           "required": [
10447             "Message",
10448             "Code"
10449           ]
10450         },
10451         "ErrorInfo": {
10452           "type": "object",
10453           "properties": {
10454             "Macaroon": {
10455               "$ref": "#/definitions/Macaroon"
10456             },
10457             "MacaroonPath": {
10458               "type": "string"
10459             }
10460           },
10461           "additionalProperties": false
10462         },
10463         "ErrorResult": {
10464           "type": "object",
10465           "properties": {
10466             "Error": {
10467               "$ref": "#/definitions/Error"
10468             }
10469           },
10470           "additionalProperties": false,
10471           "required": [
10472             "Error"
10473           ]
10474         },
10475         "Macaroon": {
10476           "type": "object",
10477           "properties": {
10478             "caveats": {
10479               "type": "array",
10480               "items": {
10481                 "$ref": "#/definitions/caveat"
10482               }
10483             },
10484             "data": {
10485               "type": "array",
10486               "items": {
10487                 "type": "integer"
10488               }
10489             },
10490             "id": {
10491               "$ref": "#/definitions/packet"
10492             },
10493             "location": {
10494               "$ref": "#/definitions/packet"
10495             },
10496             "sig": {
10497               "type": "array",
10498               "items": {
10499                 "type": "integer"
10500               }
10501             }
10502           },
10503           "additionalProperties": false,
10504           "required": [
10505             "data",
10506             "location",
10507             "id",
10508             "caveats",
10509             "sig"
10510           ]
10511         },
10512         "caveat": {
10513           "type": "object",
10514           "properties": {
10515             "caveatId": {
10516               "$ref": "#/definitions/packet"
10517             },
10518             "location": {
10519               "$ref": "#/definitions/packet"
10520             },
10521             "verificationId": {
10522               "$ref": "#/definitions/packet"
10523             }
10524           },
10525           "additionalProperties": false,
10526           "required": [
10527             "location",
10528             "caveatId",
10529             "verificationId"
10530           ]
10531         },
10532         "packet": {
10533           "type": "object",
10534           "properties": {
10535             "headerLen": {
10536               "type": "integer"
10537             },
10538             "start": {
10539               "type": "integer"
10540             },
10541             "totalLen": {
10542               "type": "integer"
10543             }
10544           },
10545           "additionalProperties": false,
10546           "required": [
10547             "start",
10548             "totalLen",
10549             "headerLen"
10550           ]
10551         }
10552       }
10553     }
10554   },
10555   {
10556     "Name": "LifeFlag",
10557     "Version": 1,
10558     "Schema": {
10559       "type": "object",
10560       "properties": {
10561         "Life": {
10562           "type": "object",
10563           "properties": {
10564             "Params": {
10565               "$ref": "#/definitions/Entities"
10566             },
10567             "Result": {
10568               "$ref": "#/definitions/LifeResults"
10569             }
10570           }
10571         },
10572         "Watch": {
10573           "type": "object",
10574           "properties": {
10575             "Params": {
10576               "$ref": "#/definitions/Entities"
10577             },
10578             "Result": {
10579               "$ref": "#/definitions/NotifyWatchResults"
10580             }
10581           }
10582         }
10583       },
10584       "definitions": {
10585         "Entities": {
10586           "type": "object",
10587           "properties": {
10588             "Entities": {
10589               "type": "array",
10590               "items": {
10591                 "$ref": "#/definitions/Entity"
10592               }
10593             }
10594           },
10595           "additionalProperties": false,
10596           "required": [
10597             "Entities"
10598           ]
10599         },
10600         "Entity": {
10601           "type": "object",
10602           "properties": {
10603             "Tag": {
10604               "type": "string"
10605             }
10606           },
10607           "additionalProperties": false,
10608           "required": [
10609             "Tag"
10610           ]
10611         },
10612         "Error": {
10613           "type": "object",
10614           "properties": {
10615             "Code": {
10616               "type": "string"
10617             },
10618             "Info": {
10619               "$ref": "#/definitions/ErrorInfo"
10620             },
10621             "Message": {
10622               "type": "string"
10623             }
10624           },
10625           "additionalProperties": false,
10626           "required": [
10627             "Message",
10628             "Code"
10629           ]
10630         },
10631         "ErrorInfo": {
10632           "type": "object",
10633           "properties": {
10634             "Macaroon": {
10635               "$ref": "#/definitions/Macaroon"
10636             },
10637             "MacaroonPath": {
10638               "type": "string"
10639             }
10640           },
10641           "additionalProperties": false
10642         },
10643         "LifeResult": {
10644           "type": "object",
10645           "properties": {
10646             "Error": {
10647               "$ref": "#/definitions/Error"
10648             },
10649             "Life": {
10650               "type": "string"
10651             }
10652           },
10653           "additionalProperties": false,
10654           "required": [
10655             "Life",
10656             "Error"
10657           ]
10658         },
10659         "LifeResults": {
10660           "type": "object",
10661           "properties": {
10662             "Results": {
10663               "type": "array",
10664               "items": {
10665                 "$ref": "#/definitions/LifeResult"
10666               }
10667             }
10668           },
10669           "additionalProperties": false,
10670           "required": [
10671             "Results"
10672           ]
10673         },
10674         "Macaroon": {
10675           "type": "object",
10676           "properties": {
10677             "caveats": {
10678               "type": "array",
10679               "items": {
10680                 "$ref": "#/definitions/caveat"
10681               }
10682             },
10683             "data": {
10684               "type": "array",
10685               "items": {
10686                 "type": "integer"
10687               }
10688             },
10689             "id": {
10690               "$ref": "#/definitions/packet"
10691             },
10692             "location": {
10693               "$ref": "#/definitions/packet"
10694             },
10695             "sig": {
10696               "type": "array",
10697               "items": {
10698                 "type": "integer"
10699               }
10700             }
10701           },
10702           "additionalProperties": false,
10703           "required": [
10704             "data",
10705             "location",
10706             "id",
10707             "caveats",
10708             "sig"
10709           ]
10710         },
10711         "NotifyWatchResult": {
10712           "type": "object",
10713           "properties": {
10714             "Error": {
10715               "$ref": "#/definitions/Error"
10716             },
10717             "NotifyWatcherId": {
10718               "type": "string"
10719             }
10720           },
10721           "additionalProperties": false,
10722           "required": [
10723             "NotifyWatcherId",
10724             "Error"
10725           ]
10726         },
10727         "NotifyWatchResults": {
10728           "type": "object",
10729           "properties": {
10730             "Results": {
10731               "type": "array",
10732               "items": {
10733                 "$ref": "#/definitions/NotifyWatchResult"
10734               }
10735             }
10736           },
10737           "additionalProperties": false,
10738           "required": [
10739             "Results"
10740           ]
10741         },
10742         "caveat": {
10743           "type": "object",
10744           "properties": {
10745             "caveatId": {
10746               "$ref": "#/definitions/packet"
10747             },
10748             "location": {
10749               "$ref": "#/definitions/packet"
10750             },
10751             "verificationId": {
10752               "$ref": "#/definitions/packet"
10753             }
10754           },
10755           "additionalProperties": false,
10756           "required": [
10757             "location",
10758             "caveatId",
10759             "verificationId"
10760           ]
10761         },
10762         "packet": {
10763           "type": "object",
10764           "properties": {
10765             "headerLen": {
10766               "type": "integer"
10767             },
10768             "start": {
10769               "type": "integer"
10770             },
10771             "totalLen": {
10772               "type": "integer"
10773             }
10774           },
10775           "additionalProperties": false,
10776           "required": [
10777             "start",
10778             "totalLen",
10779             "headerLen"
10780           ]
10781         }
10782       }
10783     }
10784   },
10785   {
10786     "Name": "Logger",
10787     "Version": 1,
10788     "Schema": {
10789       "type": "object",
10790       "properties": {
10791         "LoggingConfig": {
10792           "type": "object",
10793           "properties": {
10794             "Params": {
10795               "$ref": "#/definitions/Entities"
10796             },
10797             "Result": {
10798               "$ref": "#/definitions/StringResults"
10799             }
10800           }
10801         },
10802         "WatchLoggingConfig": {
10803           "type": "object",
10804           "properties": {
10805             "Params": {
10806               "$ref": "#/definitions/Entities"
10807             },
10808             "Result": {
10809               "$ref": "#/definitions/NotifyWatchResults"
10810             }
10811           }
10812         }
10813       },
10814       "definitions": {
10815         "Entities": {
10816           "type": "object",
10817           "properties": {
10818             "Entities": {
10819               "type": "array",
10820               "items": {
10821                 "$ref": "#/definitions/Entity"
10822               }
10823             }
10824           },
10825           "additionalProperties": false,
10826           "required": [
10827             "Entities"
10828           ]
10829         },
10830         "Entity": {
10831           "type": "object",
10832           "properties": {
10833             "Tag": {
10834               "type": "string"
10835             }
10836           },
10837           "additionalProperties": false,
10838           "required": [
10839             "Tag"
10840           ]
10841         },
10842         "Error": {
10843           "type": "object",
10844           "properties": {
10845             "Code": {
10846               "type": "string"
10847             },
10848             "Info": {
10849               "$ref": "#/definitions/ErrorInfo"
10850             },
10851             "Message": {
10852               "type": "string"
10853             }
10854           },
10855           "additionalProperties": false,
10856           "required": [
10857             "Message",
10858             "Code"
10859           ]
10860         },
10861         "ErrorInfo": {
10862           "type": "object",
10863           "properties": {
10864             "Macaroon": {
10865               "$ref": "#/definitions/Macaroon"
10866             },
10867             "MacaroonPath": {
10868               "type": "string"
10869             }
10870           },
10871           "additionalProperties": false
10872         },
10873         "Macaroon": {
10874           "type": "object",
10875           "properties": {
10876             "caveats": {
10877               "type": "array",
10878               "items": {
10879                 "$ref": "#/definitions/caveat"
10880               }
10881             },
10882             "data": {
10883               "type": "array",
10884               "items": {
10885                 "type": "integer"
10886               }
10887             },
10888             "id": {
10889               "$ref": "#/definitions/packet"
10890             },
10891             "location": {
10892               "$ref": "#/definitions/packet"
10893             },
10894             "sig": {
10895               "type": "array",
10896               "items": {
10897                 "type": "integer"
10898               }
10899             }
10900           },
10901           "additionalProperties": false,
10902           "required": [
10903             "data",
10904             "location",
10905             "id",
10906             "caveats",
10907             "sig"
10908           ]
10909         },
10910         "NotifyWatchResult": {
10911           "type": "object",
10912           "properties": {
10913             "Error": {
10914               "$ref": "#/definitions/Error"
10915             },
10916             "NotifyWatcherId": {
10917               "type": "string"
10918             }
10919           },
10920           "additionalProperties": false,
10921           "required": [
10922             "NotifyWatcherId",
10923             "Error"
10924           ]
10925         },
10926         "NotifyWatchResults": {
10927           "type": "object",
10928           "properties": {
10929             "Results": {
10930               "type": "array",
10931               "items": {
10932                 "$ref": "#/definitions/NotifyWatchResult"
10933               }
10934             }
10935           },
10936           "additionalProperties": false,
10937           "required": [
10938             "Results"
10939           ]
10940         },
10941         "StringResult": {
10942           "type": "object",
10943           "properties": {
10944             "Error": {
10945               "$ref": "#/definitions/Error"
10946             },
10947             "Result": {
10948               "type": "string"
10949             }
10950           },
10951           "additionalProperties": false,
10952           "required": [
10953             "Error",
10954             "Result"
10955           ]
10956         },
10957         "StringResults": {
10958           "type": "object",
10959           "properties": {
10960             "Results": {
10961               "type": "array",
10962               "items": {
10963                 "$ref": "#/definitions/StringResult"
10964               }
10965             }
10966           },
10967           "additionalProperties": false,
10968           "required": [
10969             "Results"
10970           ]
10971         },
10972         "caveat": {
10973           "type": "object",
10974           "properties": {
10975             "caveatId": {
10976               "$ref": "#/definitions/packet"
10977             },
10978             "location": {
10979               "$ref": "#/definitions/packet"
10980             },
10981             "verificationId": {
10982               "$ref": "#/definitions/packet"
10983             }
10984           },
10985           "additionalProperties": false,
10986           "required": [
10987             "location",
10988             "caveatId",
10989             "verificationId"
10990           ]
10991         },
10992         "packet": {
10993           "type": "object",
10994           "properties": {
10995             "headerLen": {
10996               "type": "integer"
10997             },
10998             "start": {
10999               "type": "integer"
11000             },
11001             "totalLen": {
11002               "type": "integer"
11003             }
11004           },
11005           "additionalProperties": false,
11006           "required": [
11007             "start",
11008             "totalLen",
11009             "headerLen"
11010           ]
11011         }
11012       }
11013     }
11014   },
11015   {
11016     "Name": "MachineActions",
11017     "Version": 1,
11018     "Schema": {
11019       "type": "object",
11020       "properties": {
11021         "Actions": {
11022           "type": "object",
11023           "properties": {
11024             "Params": {
11025               "$ref": "#/definitions/Entities"
11026             },
11027             "Result": {
11028               "$ref": "#/definitions/ActionResults"
11029             }
11030           }
11031         },
11032         "BeginActions": {
11033           "type": "object",
11034           "properties": {
11035             "Params": {
11036               "$ref": "#/definitions/Entities"
11037             },
11038             "Result": {
11039               "$ref": "#/definitions/ErrorResults"
11040             }
11041           }
11042         },
11043         "FinishActions": {
11044           "type": "object",
11045           "properties": {
11046             "Params": {
11047               "$ref": "#/definitions/ActionExecutionResults"
11048             },
11049             "Result": {
11050               "$ref": "#/definitions/ErrorResults"
11051             }
11052           }
11053         },
11054         "RunningActions": {
11055           "type": "object",
11056           "properties": {
11057             "Params": {
11058               "$ref": "#/definitions/Entities"
11059             },
11060             "Result": {
11061               "$ref": "#/definitions/ActionsByReceivers"
11062             }
11063           }
11064         },
11065         "WatchActionNotifications": {
11066           "type": "object",
11067           "properties": {
11068             "Params": {
11069               "$ref": "#/definitions/Entities"
11070             },
11071             "Result": {
11072               "$ref": "#/definitions/StringsWatchResults"
11073             }
11074           }
11075         }
11076       },
11077       "definitions": {
11078         "Action": {
11079           "type": "object",
11080           "properties": {
11081             "name": {
11082               "type": "string"
11083             },
11084             "parameters": {
11085               "type": "object",
11086               "patternProperties": {
11087                 ".*": {
11088                   "type": "object",
11089                   "additionalProperties": true
11090                 }
11091               }
11092             },
11093             "receiver": {
11094               "type": "string"
11095             },
11096             "tag": {
11097               "type": "string"
11098             }
11099           },
11100           "additionalProperties": false,
11101           "required": [
11102             "tag",
11103             "receiver",
11104             "name"
11105           ]
11106         },
11107         "ActionExecutionResult": {
11108           "type": "object",
11109           "properties": {
11110             "actiontag": {
11111               "type": "string"
11112             },
11113             "message": {
11114               "type": "string"
11115             },
11116             "results": {
11117               "type": "object",
11118               "patternProperties": {
11119                 ".*": {
11120                   "type": "object",
11121                   "additionalProperties": true
11122                 }
11123               }
11124             },
11125             "status": {
11126               "type": "string"
11127             }
11128           },
11129           "additionalProperties": false,
11130           "required": [
11131             "actiontag",
11132             "status"
11133           ]
11134         },
11135         "ActionExecutionResults": {
11136           "type": "object",
11137           "properties": {
11138             "results": {
11139               "type": "array",
11140               "items": {
11141                 "$ref": "#/definitions/ActionExecutionResult"
11142               }
11143             }
11144           },
11145           "additionalProperties": false
11146         },
11147         "ActionResult": {
11148           "type": "object",
11149           "properties": {
11150             "action": {
11151               "$ref": "#/definitions/Action"
11152             },
11153             "completed": {
11154               "type": "string",
11155               "format": "date-time"
11156             },
11157             "enqueued": {
11158               "type": "string",
11159               "format": "date-time"
11160             },
11161             "error": {
11162               "$ref": "#/definitions/Error"
11163             },
11164             "message": {
11165               "type": "string"
11166             },
11167             "output": {
11168               "type": "object",
11169               "patternProperties": {
11170                 ".*": {
11171                   "type": "object",
11172                   "additionalProperties": true
11173                 }
11174               }
11175             },
11176             "started": {
11177               "type": "string",
11178               "format": "date-time"
11179             },
11180             "status": {
11181               "type": "string"
11182             }
11183           },
11184           "additionalProperties": false
11185         },
11186         "ActionResults": {
11187           "type": "object",
11188           "properties": {
11189             "results": {
11190               "type": "array",
11191               "items": {
11192                 "$ref": "#/definitions/ActionResult"
11193               }
11194             }
11195           },
11196           "additionalProperties": false
11197         },
11198         "ActionsByReceiver": {
11199           "type": "object",
11200           "properties": {
11201             "actions": {
11202               "type": "array",
11203               "items": {
11204                 "$ref": "#/definitions/ActionResult"
11205               }
11206             },
11207             "error": {
11208               "$ref": "#/definitions/Error"
11209             },
11210             "receiver": {
11211               "type": "string"
11212             }
11213           },
11214           "additionalProperties": false
11215         },
11216         "ActionsByReceivers": {
11217           "type": "object",
11218           "properties": {
11219             "actions": {
11220               "type": "array",
11221               "items": {
11222                 "$ref": "#/definitions/ActionsByReceiver"
11223               }
11224             }
11225           },
11226           "additionalProperties": false
11227         },
11228         "Entities": {
11229           "type": "object",
11230           "properties": {
11231             "Entities": {
11232               "type": "array",
11233               "items": {
11234                 "$ref": "#/definitions/Entity"
11235               }
11236             }
11237           },
11238           "additionalProperties": false,
11239           "required": [
11240             "Entities"
11241           ]
11242         },
11243         "Entity": {
11244           "type": "object",
11245           "properties": {
11246             "Tag": {
11247               "type": "string"
11248             }
11249           },
11250           "additionalProperties": false,
11251           "required": [
11252             "Tag"
11253           ]
11254         },
11255         "Error": {
11256           "type": "object",
11257           "properties": {
11258             "Code": {
11259               "type": "string"
11260             },
11261             "Info": {
11262               "$ref": "#/definitions/ErrorInfo"
11263             },
11264             "Message": {
11265               "type": "string"
11266             }
11267           },
11268           "additionalProperties": false,
11269           "required": [
11270             "Message",
11271             "Code"
11272           ]
11273         },
11274         "ErrorInfo": {
11275           "type": "object",
11276           "properties": {
11277             "Macaroon": {
11278               "$ref": "#/definitions/Macaroon"
11279             },
11280             "MacaroonPath": {
11281               "type": "string"
11282             }
11283           },
11284           "additionalProperties": false
11285         },
11286         "ErrorResult": {
11287           "type": "object",
11288           "properties": {
11289             "Error": {
11290               "$ref": "#/definitions/Error"
11291             }
11292           },
11293           "additionalProperties": false,
11294           "required": [
11295             "Error"
11296           ]
11297         },
11298         "ErrorResults": {
11299           "type": "object",
11300           "properties": {
11301             "Results": {
11302               "type": "array",
11303               "items": {
11304                 "$ref": "#/definitions/ErrorResult"
11305               }
11306             }
11307           },
11308           "additionalProperties": false,
11309           "required": [
11310             "Results"
11311           ]
11312         },
11313         "Macaroon": {
11314           "type": "object",
11315           "properties": {
11316             "caveats": {
11317               "type": "array",
11318               "items": {
11319                 "$ref": "#/definitions/caveat"
11320               }
11321             },
11322             "data": {
11323               "type": "array",
11324               "items": {
11325                 "type": "integer"
11326               }
11327             },
11328             "id": {
11329               "$ref": "#/definitions/packet"
11330             },
11331             "location": {
11332               "$ref": "#/definitions/packet"
11333             },
11334             "sig": {
11335               "type": "array",
11336               "items": {
11337                 "type": "integer"
11338               }
11339             }
11340           },
11341           "additionalProperties": false,
11342           "required": [
11343             "data",
11344             "location",
11345             "id",
11346             "caveats",
11347             "sig"
11348           ]
11349         },
11350         "StringsWatchResult": {
11351           "type": "object",
11352           "properties": {
11353             "Changes": {
11354               "type": "array",
11355               "items": {
11356                 "type": "string"
11357               }
11358             },
11359             "Error": {
11360               "$ref": "#/definitions/Error"
11361             },
11362             "StringsWatcherId": {
11363               "type": "string"
11364             }
11365           },
11366           "additionalProperties": false,
11367           "required": [
11368             "StringsWatcherId",
11369             "Changes",
11370             "Error"
11371           ]
11372         },
11373         "StringsWatchResults": {
11374           "type": "object",
11375           "properties": {
11376             "Results": {
11377               "type": "array",
11378               "items": {
11379                 "$ref": "#/definitions/StringsWatchResult"
11380               }
11381             }
11382           },
11383           "additionalProperties": false,
11384           "required": [
11385             "Results"
11386           ]
11387         },
11388         "caveat": {
11389           "type": "object",
11390           "properties": {
11391             "caveatId": {
11392               "$ref": "#/definitions/packet"
11393             },
11394             "location": {
11395               "$ref": "#/definitions/packet"
11396             },
11397             "verificationId": {
11398               "$ref": "#/definitions/packet"
11399             }
11400           },
11401           "additionalProperties": false,
11402           "required": [
11403             "location",
11404             "caveatId",
11405             "verificationId"
11406           ]
11407         },
11408         "packet": {
11409           "type": "object",
11410           "properties": {
11411             "headerLen": {
11412               "type": "integer"
11413             },
11414             "start": {
11415               "type": "integer"
11416             },
11417             "totalLen": {
11418               "type": "integer"
11419             }
11420           },
11421           "additionalProperties": false,
11422           "required": [
11423             "start",
11424             "totalLen",
11425             "headerLen"
11426           ]
11427         }
11428       }
11429     }
11430   },
11431   {
11432     "Name": "MachineManager",
11433     "Version": 2,
11434     "Schema": {
11435       "type": "object",
11436       "properties": {
11437         "AddMachines": {
11438           "type": "object",
11439           "properties": {
11440             "Params": {
11441               "$ref": "#/definitions/AddMachines"
11442             },
11443             "Result": {
11444               "$ref": "#/definitions/AddMachinesResults"
11445             }
11446           }
11447         }
11448       },
11449       "definitions": {
11450         "AddMachineParams": {
11451           "type": "object",
11452           "properties": {
11453             "Addrs": {
11454               "type": "array",
11455               "items": {
11456                 "$ref": "#/definitions/Address"
11457               }
11458             },
11459             "Constraints": {
11460               "$ref": "#/definitions/Value"
11461             },
11462             "ContainerType": {
11463               "type": "string"
11464             },
11465             "Disks": {
11466               "type": "array",
11467               "items": {
11468                 "$ref": "#/definitions/Constraints"
11469               }
11470             },
11471             "HardwareCharacteristics": {
11472               "$ref": "#/definitions/HardwareCharacteristics"
11473             },
11474             "InstanceId": {
11475               "type": "string"
11476             },
11477             "Jobs": {
11478               "type": "array",
11479               "items": {
11480                 "type": "string"
11481               }
11482             },
11483             "Nonce": {
11484               "type": "string"
11485             },
11486             "ParentId": {
11487               "type": "string"
11488             },
11489             "Placement": {
11490               "$ref": "#/definitions/Placement"
11491             },
11492             "Series": {
11493               "type": "string"
11494             }
11495           },
11496           "additionalProperties": false,
11497           "required": [
11498             "Series",
11499             "Constraints",
11500             "Jobs",
11501             "Disks",
11502             "Placement",
11503             "ParentId",
11504             "ContainerType",
11505             "InstanceId",
11506             "Nonce",
11507             "HardwareCharacteristics",
11508             "Addrs"
11509           ]
11510         },
11511         "AddMachines": {
11512           "type": "object",
11513           "properties": {
11514             "MachineParams": {
11515               "type": "array",
11516               "items": {
11517                 "$ref": "#/definitions/AddMachineParams"
11518               }
11519             }
11520           },
11521           "additionalProperties": false,
11522           "required": [
11523             "MachineParams"
11524           ]
11525         },
11526         "AddMachinesResult": {
11527           "type": "object",
11528           "properties": {
11529             "Error": {
11530               "$ref": "#/definitions/Error"
11531             },
11532             "Machine": {
11533               "type": "string"
11534             }
11535           },
11536           "additionalProperties": false,
11537           "required": [
11538             "Machine",
11539             "Error"
11540           ]
11541         },
11542         "AddMachinesResults": {
11543           "type": "object",
11544           "properties": {
11545             "Machines": {
11546               "type": "array",
11547               "items": {
11548                 "$ref": "#/definitions/AddMachinesResult"
11549               }
11550             }
11551           },
11552           "additionalProperties": false,
11553           "required": [
11554             "Machines"
11555           ]
11556         },
11557         "Address": {
11558           "type": "object",
11559           "properties": {
11560             "Scope": {
11561               "type": "string"
11562             },
11563             "SpaceName": {
11564               "type": "string"
11565             },
11566             "Type": {
11567               "type": "string"
11568             },
11569             "Value": {
11570               "type": "string"
11571             }
11572           },
11573           "additionalProperties": false,
11574           "required": [
11575             "Value",
11576             "Type",
11577             "Scope"
11578           ]
11579         },
11580         "Constraints": {
11581           "type": "object",
11582           "properties": {
11583             "Count": {
11584               "type": "integer"
11585             },
11586             "Pool": {
11587               "type": "string"
11588             },
11589             "Size": {
11590               "type": "integer"
11591             }
11592           },
11593           "additionalProperties": false,
11594           "required": [
11595             "Pool",
11596             "Size",
11597             "Count"
11598           ]
11599         },
11600         "Error": {
11601           "type": "object",
11602           "properties": {
11603             "Code": {
11604               "type": "string"
11605             },
11606             "Info": {
11607               "$ref": "#/definitions/ErrorInfo"
11608             },
11609             "Message": {
11610               "type": "string"
11611             }
11612           },
11613           "additionalProperties": false,
11614           "required": [
11615             "Message",
11616             "Code"
11617           ]
11618         },
11619         "ErrorInfo": {
11620           "type": "object",
11621           "properties": {
11622             "Macaroon": {
11623               "$ref": "#/definitions/Macaroon"
11624             },
11625             "MacaroonPath": {
11626               "type": "string"
11627             }
11628           },
11629           "additionalProperties": false
11630         },
11631         "HardwareCharacteristics": {
11632           "type": "object",
11633           "properties": {
11634             "Arch": {
11635               "type": "string"
11636             },
11637             "AvailabilityZone": {
11638               "type": "string"
11639             },
11640             "CpuCores": {
11641               "type": "integer"
11642             },
11643             "CpuPower": {
11644               "type": "integer"
11645             },
11646             "Mem": {
11647               "type": "integer"
11648             },
11649             "RootDisk": {
11650               "type": "integer"
11651             },
11652             "Tags": {
11653               "type": "array",
11654               "items": {
11655                 "type": "string"
11656               }
11657             }
11658           },
11659           "additionalProperties": false
11660         },
11661         "Macaroon": {
11662           "type": "object",
11663           "properties": {
11664             "caveats": {
11665               "type": "array",
11666               "items": {
11667                 "$ref": "#/definitions/caveat"
11668               }
11669             },
11670             "data": {
11671               "type": "array",
11672               "items": {
11673                 "type": "integer"
11674               }
11675             },
11676             "id": {
11677               "$ref": "#/definitions/packet"
11678             },
11679             "location": {
11680               "$ref": "#/definitions/packet"
11681             },
11682             "sig": {
11683               "type": "array",
11684               "items": {
11685                 "type": "integer"
11686               }
11687             }
11688           },
11689           "additionalProperties": false,
11690           "required": [
11691             "data",
11692             "location",
11693             "id",
11694             "caveats",
11695             "sig"
11696           ]
11697         },
11698         "Placement": {
11699           "type": "object",
11700           "properties": {
11701             "Directive": {
11702               "type": "string"
11703             },
11704             "Scope": {
11705               "type": "string"
11706             }
11707           },
11708           "additionalProperties": false,
11709           "required": [
11710             "Scope",
11711             "Directive"
11712           ]
11713         },
11714         "Value": {
11715           "type": "object",
11716           "properties": {
11717             "arch": {
11718               "type": "string"
11719             },
11720             "container": {
11721               "type": "string"
11722             },
11723             "cpu-cores": {
11724               "type": "integer"
11725             },
11726             "cpu-power": {
11727               "type": "integer"
11728             },
11729             "instance-type": {
11730               "type": "string"
11731             },
11732             "mem": {
11733               "type": "integer"
11734             },
11735             "root-disk": {
11736               "type": "integer"
11737             },
11738             "spaces": {
11739               "type": "array",
11740               "items": {
11741                 "type": "string"
11742               }
11743             },
11744             "tags": {
11745               "type": "array",
11746               "items": {
11747                 "type": "string"
11748               }
11749             },
11750             "virt-type": {
11751               "type": "string"
11752             }
11753           },
11754           "additionalProperties": false
11755         },
11756         "caveat": {
11757           "type": "object",
11758           "properties": {
11759             "caveatId": {
11760               "$ref": "#/definitions/packet"
11761             },
11762             "location": {
11763               "$ref": "#/definitions/packet"
11764             },
11765             "verificationId": {
11766               "$ref": "#/definitions/packet"
11767             }
11768           },
11769           "additionalProperties": false,
11770           "required": [
11771             "location",
11772             "caveatId",
11773             "verificationId"
11774           ]
11775         },
11776         "packet": {
11777           "type": "object",
11778           "properties": {
11779             "headerLen": {
11780               "type": "integer"
11781             },
11782             "start": {
11783               "type": "integer"
11784             },
11785             "totalLen": {
11786               "type": "integer"
11787             }
11788           },
11789           "additionalProperties": false,
11790           "required": [
11791             "start",
11792             "totalLen",
11793             "headerLen"
11794           ]
11795         }
11796       }
11797     }
11798   },
11799   {
11800     "Name": "Machiner",
11801     "Version": 1,
11802     "Schema": {
11803       "type": "object",
11804       "properties": {
11805         "APIAddresses": {
11806           "type": "object",
11807           "properties": {
11808             "Result": {
11809               "$ref": "#/definitions/StringsResult"
11810             }
11811           }
11812         },
11813         "APIHostPorts": {
11814           "type": "object",
11815           "properties": {
11816             "Result": {
11817               "$ref": "#/definitions/APIHostPortsResult"
11818             }
11819           }
11820         },
11821         "CACert": {
11822           "type": "object",
11823           "properties": {
11824             "Result": {
11825               "$ref": "#/definitions/BytesResult"
11826             }
11827           }
11828         },
11829         "EnsureDead": {
11830           "type": "object",
11831           "properties": {
11832             "Params": {
11833               "$ref": "#/definitions/Entities"
11834             },
11835             "Result": {
11836               "$ref": "#/definitions/ErrorResults"
11837             }
11838           }
11839         },
11840         "Jobs": {
11841           "type": "object",
11842           "properties": {
11843             "Params": {
11844               "$ref": "#/definitions/Entities"
11845             },
11846             "Result": {
11847               "$ref": "#/definitions/JobsResults"
11848             }
11849           }
11850         },
11851         "Life": {
11852           "type": "object",
11853           "properties": {
11854             "Params": {
11855               "$ref": "#/definitions/Entities"
11856             },
11857             "Result": {
11858               "$ref": "#/definitions/LifeResults"
11859             }
11860           }
11861         },
11862         "ModelUUID": {
11863           "type": "object",
11864           "properties": {
11865             "Result": {
11866               "$ref": "#/definitions/StringResult"
11867             }
11868           }
11869         },
11870         "SetMachineAddresses": {
11871           "type": "object",
11872           "properties": {
11873             "Params": {
11874               "$ref": "#/definitions/SetMachinesAddresses"
11875             },
11876             "Result": {
11877               "$ref": "#/definitions/ErrorResults"
11878             }
11879           }
11880         },
11881         "SetObservedNetworkConfig": {
11882           "type": "object",
11883           "properties": {
11884             "Params": {
11885               "$ref": "#/definitions/SetMachineNetworkConfig"
11886             }
11887           }
11888         },
11889         "SetProviderNetworkConfig": {
11890           "type": "object",
11891           "properties": {
11892             "Params": {
11893               "$ref": "#/definitions/Entities"
11894             },
11895             "Result": {
11896               "$ref": "#/definitions/ErrorResults"
11897             }
11898           }
11899         },
11900         "SetStatus": {
11901           "type": "object",
11902           "properties": {
11903             "Params": {
11904               "$ref": "#/definitions/SetStatus"
11905             },
11906             "Result": {
11907               "$ref": "#/definitions/ErrorResults"
11908             }
11909           }
11910         },
11911         "UpdateStatus": {
11912           "type": "object",
11913           "properties": {
11914             "Params": {
11915               "$ref": "#/definitions/SetStatus"
11916             },
11917             "Result": {
11918               "$ref": "#/definitions/ErrorResults"
11919             }
11920           }
11921         },
11922         "Watch": {
11923           "type": "object",
11924           "properties": {
11925             "Params": {
11926               "$ref": "#/definitions/Entities"
11927             },
11928             "Result": {
11929               "$ref": "#/definitions/NotifyWatchResults"
11930             }
11931           }
11932         },
11933         "WatchAPIHostPorts": {
11934           "type": "object",
11935           "properties": {
11936             "Result": {
11937               "$ref": "#/definitions/NotifyWatchResult"
11938             }
11939           }
11940         }
11941       },
11942       "definitions": {
11943         "APIHostPortsResult": {
11944           "type": "object",
11945           "properties": {
11946             "Servers": {
11947               "type": "array",
11948               "items": {
11949                 "type": "array",
11950                 "items": {
11951                   "$ref": "#/definitions/HostPort"
11952                 }
11953               }
11954             }
11955           },
11956           "additionalProperties": false,
11957           "required": [
11958             "Servers"
11959           ]
11960         },
11961         "Address": {
11962           "type": "object",
11963           "properties": {
11964             "Scope": {
11965               "type": "string"
11966             },
11967             "SpaceName": {
11968               "type": "string"
11969             },
11970             "Type": {
11971               "type": "string"
11972             },
11973             "Value": {
11974               "type": "string"
11975             }
11976           },
11977           "additionalProperties": false,
11978           "required": [
11979             "Value",
11980             "Type",
11981             "Scope"
11982           ]
11983         },
11984         "BytesResult": {
11985           "type": "object",
11986           "properties": {
11987             "Result": {
11988               "type": "array",
11989               "items": {
11990                 "type": "integer"
11991               }
11992             }
11993           },
11994           "additionalProperties": false,
11995           "required": [
11996             "Result"
11997           ]
11998         },
11999         "Entities": {
12000           "type": "object",
12001           "properties": {
12002             "Entities": {
12003               "type": "array",
12004               "items": {
12005                 "$ref": "#/definitions/Entity"
12006               }
12007             }
12008           },
12009           "additionalProperties": false,
12010           "required": [
12011             "Entities"
12012           ]
12013         },
12014         "Entity": {
12015           "type": "object",
12016           "properties": {
12017             "Tag": {
12018               "type": "string"
12019             }
12020           },
12021           "additionalProperties": false,
12022           "required": [
12023             "Tag"
12024           ]
12025         },
12026         "EntityStatusArgs": {
12027           "type": "object",
12028           "properties": {
12029             "Data": {
12030               "type": "object",
12031               "patternProperties": {
12032                 ".*": {
12033                   "type": "object",
12034                   "additionalProperties": true
12035                 }
12036               }
12037             },
12038             "Info": {
12039               "type": "string"
12040             },
12041             "Status": {
12042               "type": "string"
12043             },
12044             "Tag": {
12045               "type": "string"
12046             }
12047           },
12048           "additionalProperties": false,
12049           "required": [
12050             "Tag",
12051             "Status",
12052             "Info",
12053             "Data"
12054           ]
12055         },
12056         "Error": {
12057           "type": "object",
12058           "properties": {
12059             "Code": {
12060               "type": "string"
12061             },
12062             "Info": {
12063               "$ref": "#/definitions/ErrorInfo"
12064             },
12065             "Message": {
12066               "type": "string"
12067             }
12068           },
12069           "additionalProperties": false,
12070           "required": [
12071             "Message",
12072             "Code"
12073           ]
12074         },
12075         "ErrorInfo": {
12076           "type": "object",
12077           "properties": {
12078             "Macaroon": {
12079               "$ref": "#/definitions/Macaroon"
12080             },
12081             "MacaroonPath": {
12082               "type": "string"
12083             }
12084           },
12085           "additionalProperties": false
12086         },
12087         "ErrorResult": {
12088           "type": "object",
12089           "properties": {
12090             "Error": {
12091               "$ref": "#/definitions/Error"
12092             }
12093           },
12094           "additionalProperties": false,
12095           "required": [
12096             "Error"
12097           ]
12098         },
12099         "ErrorResults": {
12100           "type": "object",
12101           "properties": {
12102             "Results": {
12103               "type": "array",
12104               "items": {
12105                 "$ref": "#/definitions/ErrorResult"
12106               }
12107             }
12108           },
12109           "additionalProperties": false,
12110           "required": [
12111             "Results"
12112           ]
12113         },
12114         "HostPort": {
12115           "type": "object",
12116           "properties": {
12117             "Address": {
12118               "$ref": "#/definitions/Address"
12119             },
12120             "Port": {
12121               "type": "integer"
12122             }
12123           },
12124           "additionalProperties": false,
12125           "required": [
12126             "Address",
12127             "Port"
12128           ]
12129         },
12130         "JobsResult": {
12131           "type": "object",
12132           "properties": {
12133             "Error": {
12134               "$ref": "#/definitions/Error"
12135             },
12136             "Jobs": {
12137               "type": "array",
12138               "items": {
12139                 "type": "string"
12140               }
12141             }
12142           },
12143           "additionalProperties": false,
12144           "required": [
12145             "Jobs",
12146             "Error"
12147           ]
12148         },
12149         "JobsResults": {
12150           "type": "object",
12151           "properties": {
12152             "Results": {
12153               "type": "array",
12154               "items": {
12155                 "$ref": "#/definitions/JobsResult"
12156               }
12157             }
12158           },
12159           "additionalProperties": false,
12160           "required": [
12161             "Results"
12162           ]
12163         },
12164         "LifeResult": {
12165           "type": "object",
12166           "properties": {
12167             "Error": {
12168               "$ref": "#/definitions/Error"
12169             },
12170             "Life": {
12171               "type": "string"
12172             }
12173           },
12174           "additionalProperties": false,
12175           "required": [
12176             "Life",
12177             "Error"
12178           ]
12179         },
12180         "LifeResults": {
12181           "type": "object",
12182           "properties": {
12183             "Results": {
12184               "type": "array",
12185               "items": {
12186                 "$ref": "#/definitions/LifeResult"
12187               }
12188             }
12189           },
12190           "additionalProperties": false,
12191           "required": [
12192             "Results"
12193           ]
12194         },
12195         "Macaroon": {
12196           "type": "object",
12197           "properties": {
12198             "caveats": {
12199               "type": "array",
12200               "items": {
12201                 "$ref": "#/definitions/caveat"
12202               }
12203             },
12204             "data": {
12205               "type": "array",
12206               "items": {
12207                 "type": "integer"
12208               }
12209             },
12210             "id": {
12211               "$ref": "#/definitions/packet"
12212             },
12213             "location": {
12214               "$ref": "#/definitions/packet"
12215             },
12216             "sig": {
12217               "type": "array",
12218               "items": {
12219                 "type": "integer"
12220               }
12221             }
12222           },
12223           "additionalProperties": false,
12224           "required": [
12225             "data",
12226             "location",
12227             "id",
12228             "caveats",
12229             "sig"
12230           ]
12231         },
12232         "MachineAddresses": {
12233           "type": "object",
12234           "properties": {
12235             "Addresses": {
12236               "type": "array",
12237               "items": {
12238                 "$ref": "#/definitions/Address"
12239               }
12240             },
12241             "Tag": {
12242               "type": "string"
12243             }
12244           },
12245           "additionalProperties": false,
12246           "required": [
12247             "Tag",
12248             "Addresses"
12249           ]
12250         },
12251         "NetworkConfig": {
12252           "type": "object",
12253           "properties": {
12254             "Address": {
12255               "type": "string"
12256             },
12257             "CIDR": {
12258               "type": "string"
12259             },
12260             "ConfigType": {
12261               "type": "string"
12262             },
12263             "DNSSearchDomains": {
12264               "type": "array",
12265               "items": {
12266                 "type": "string"
12267               }
12268             },
12269             "DNSServers": {
12270               "type": "array",
12271               "items": {
12272                 "type": "string"
12273               }
12274             },
12275             "DeviceIndex": {
12276               "type": "integer"
12277             },
12278             "Disabled": {
12279               "type": "boolean"
12280             },
12281             "GatewayAddress": {
12282               "type": "string"
12283             },
12284             "InterfaceName": {
12285               "type": "string"
12286             },
12287             "InterfaceType": {
12288               "type": "string"
12289             },
12290             "MACAddress": {
12291               "type": "string"
12292             },
12293             "MTU": {
12294               "type": "integer"
12295             },
12296             "NoAutoStart": {
12297               "type": "boolean"
12298             },
12299             "ParentInterfaceName": {
12300               "type": "string"
12301             },
12302             "ProviderAddressId": {
12303               "type": "string"
12304             },
12305             "ProviderId": {
12306               "type": "string"
12307             },
12308             "ProviderSpaceId": {
12309               "type": "string"
12310             },
12311             "ProviderSubnetId": {
12312               "type": "string"
12313             },
12314             "ProviderVLANId": {
12315               "type": "string"
12316             },
12317             "VLANTag": {
12318               "type": "integer"
12319             }
12320           },
12321           "additionalProperties": false,
12322           "required": [
12323             "DeviceIndex",
12324             "MACAddress",
12325             "CIDR",
12326             "MTU",
12327             "ProviderId",
12328             "ProviderSubnetId",
12329             "ProviderSpaceId",
12330             "ProviderAddressId",
12331             "ProviderVLANId",
12332             "VLANTag",
12333             "InterfaceName",
12334             "ParentInterfaceName",
12335             "InterfaceType",
12336             "Disabled"
12337           ]
12338         },
12339         "NotifyWatchResult": {
12340           "type": "object",
12341           "properties": {
12342             "Error": {
12343               "$ref": "#/definitions/Error"
12344             },
12345             "NotifyWatcherId": {
12346               "type": "string"
12347             }
12348           },
12349           "additionalProperties": false,
12350           "required": [
12351             "NotifyWatcherId",
12352             "Error"
12353           ]
12354         },
12355         "NotifyWatchResults": {
12356           "type": "object",
12357           "properties": {
12358             "Results": {
12359               "type": "array",
12360               "items": {
12361                 "$ref": "#/definitions/NotifyWatchResult"
12362               }
12363             }
12364           },
12365           "additionalProperties": false,
12366           "required": [
12367             "Results"
12368           ]
12369         },
12370         "SetMachineNetworkConfig": {
12371           "type": "object",
12372           "properties": {
12373             "Config": {
12374               "type": "array",
12375               "items": {
12376                 "$ref": "#/definitions/NetworkConfig"
12377               }
12378             },
12379             "Tag": {
12380               "type": "string"
12381             }
12382           },
12383           "additionalProperties": false,
12384           "required": [
12385             "Tag",
12386             "Config"
12387           ]
12388         },
12389         "SetMachinesAddresses": {
12390           "type": "object",
12391           "properties": {
12392             "MachineAddresses": {
12393               "type": "array",
12394               "items": {
12395                 "$ref": "#/definitions/MachineAddresses"
12396               }
12397             }
12398           },
12399           "additionalProperties": false,
12400           "required": [
12401             "MachineAddresses"
12402           ]
12403         },
12404         "SetStatus": {
12405           "type": "object",
12406           "properties": {
12407             "Entities": {
12408               "type": "array",
12409               "items": {
12410                 "$ref": "#/definitions/EntityStatusArgs"
12411               }
12412             }
12413           },
12414           "additionalProperties": false,
12415           "required": [
12416             "Entities"
12417           ]
12418         },
12419         "StringResult": {
12420           "type": "object",
12421           "properties": {
12422             "Error": {
12423               "$ref": "#/definitions/Error"
12424             },
12425             "Result": {
12426               "type": "string"
12427             }
12428           },
12429           "additionalProperties": false,
12430           "required": [
12431             "Error",
12432             "Result"
12433           ]
12434         },
12435         "StringsResult": {
12436           "type": "object",
12437           "properties": {
12438             "Error": {
12439               "$ref": "#/definitions/Error"
12440             },
12441             "Result": {
12442               "type": "array",
12443               "items": {
12444                 "type": "string"
12445               }
12446             }
12447           },
12448           "additionalProperties": false,
12449           "required": [
12450             "Error",
12451             "Result"
12452           ]
12453         },
12454         "caveat": {
12455           "type": "object",
12456           "properties": {
12457             "caveatId": {
12458               "$ref": "#/definitions/packet"
12459             },
12460             "location": {
12461               "$ref": "#/definitions/packet"
12462             },
12463             "verificationId": {
12464               "$ref": "#/definitions/packet"
12465             }
12466           },
12467           "additionalProperties": false,
12468           "required": [
12469             "location",
12470             "caveatId",
12471             "verificationId"
12472           ]
12473         },
12474         "packet": {
12475           "type": "object",
12476           "properties": {
12477             "headerLen": {
12478               "type": "integer"
12479             },
12480             "start": {
12481               "type": "integer"
12482             },
12483             "totalLen": {
12484               "type": "integer"
12485             }
12486           },
12487           "additionalProperties": false,
12488           "required": [
12489             "start",
12490             "totalLen",
12491             "headerLen"
12492           ]
12493         }
12494       }
12495     }
12496   },
12497   {
12498     "Name": "MeterStatus",
12499     "Version": 1,
12500     "Schema": {
12501       "type": "object",
12502       "properties": {
12503         "GetMeterStatus": {
12504           "type": "object",
12505           "properties": {
12506             "Params": {
12507               "$ref": "#/definitions/Entities"
12508             },
12509             "Result": {
12510               "$ref": "#/definitions/MeterStatusResults"
12511             }
12512           }
12513         },
12514         "WatchMeterStatus": {
12515           "type": "object",
12516           "properties": {
12517             "Params": {
12518               "$ref": "#/definitions/Entities"
12519             },
12520             "Result": {
12521               "$ref": "#/definitions/NotifyWatchResults"
12522             }
12523           }
12524         }
12525       },
12526       "definitions": {
12527         "Entities": {
12528           "type": "object",
12529           "properties": {
12530             "Entities": {
12531               "type": "array",
12532               "items": {
12533                 "$ref": "#/definitions/Entity"
12534               }
12535             }
12536           },
12537           "additionalProperties": false,
12538           "required": [
12539             "Entities"
12540           ]
12541         },
12542         "Entity": {
12543           "type": "object",
12544           "properties": {
12545             "Tag": {
12546               "type": "string"
12547             }
12548           },
12549           "additionalProperties": false,
12550           "required": [
12551             "Tag"
12552           ]
12553         },
12554         "Error": {
12555           "type": "object",
12556           "properties": {
12557             "Code": {
12558               "type": "string"
12559             },
12560             "Info": {
12561               "$ref": "#/definitions/ErrorInfo"
12562             },
12563             "Message": {
12564               "type": "string"
12565             }
12566           },
12567           "additionalProperties": false,
12568           "required": [
12569             "Message",
12570             "Code"
12571           ]
12572         },
12573         "ErrorInfo": {
12574           "type": "object",
12575           "properties": {
12576             "Macaroon": {
12577               "$ref": "#/definitions/Macaroon"
12578             },
12579             "MacaroonPath": {
12580               "type": "string"
12581             }
12582           },
12583           "additionalProperties": false
12584         },
12585         "Macaroon": {
12586           "type": "object",
12587           "properties": {
12588             "caveats": {
12589               "type": "array",
12590               "items": {
12591                 "$ref": "#/definitions/caveat"
12592               }
12593             },
12594             "data": {
12595               "type": "array",
12596               "items": {
12597                 "type": "integer"
12598               }
12599             },
12600             "id": {
12601               "$ref": "#/definitions/packet"
12602             },
12603             "location": {
12604               "$ref": "#/definitions/packet"
12605             },
12606             "sig": {
12607               "type": "array",
12608               "items": {
12609                 "type": "integer"
12610               }
12611             }
12612           },
12613           "additionalProperties": false,
12614           "required": [
12615             "data",
12616             "location",
12617             "id",
12618             "caveats",
12619             "sig"
12620           ]
12621         },
12622         "MeterStatusResult": {
12623           "type": "object",
12624           "properties": {
12625             "Code": {
12626               "type": "string"
12627             },
12628             "Error": {
12629               "$ref": "#/definitions/Error"
12630             },
12631             "Info": {
12632               "type": "string"
12633             }
12634           },
12635           "additionalProperties": false,
12636           "required": [
12637             "Code",
12638             "Info",
12639             "Error"
12640           ]
12641         },
12642         "MeterStatusResults": {
12643           "type": "object",
12644           "properties": {
12645             "Results": {
12646               "type": "array",
12647               "items": {
12648                 "$ref": "#/definitions/MeterStatusResult"
12649               }
12650             }
12651           },
12652           "additionalProperties": false,
12653           "required": [
12654             "Results"
12655           ]
12656         },
12657         "NotifyWatchResult": {
12658           "type": "object",
12659           "properties": {
12660             "Error": {
12661               "$ref": "#/definitions/Error"
12662             },
12663             "NotifyWatcherId": {
12664               "type": "string"
12665             }
12666           },
12667           "additionalProperties": false,
12668           "required": [
12669             "NotifyWatcherId",
12670             "Error"
12671           ]
12672         },
12673         "NotifyWatchResults": {
12674           "type": "object",
12675           "properties": {
12676             "Results": {
12677               "type": "array",
12678               "items": {
12679                 "$ref": "#/definitions/NotifyWatchResult"
12680               }
12681             }
12682           },
12683           "additionalProperties": false,
12684           "required": [
12685             "Results"
12686           ]
12687         },
12688         "caveat": {
12689           "type": "object",
12690           "properties": {
12691             "caveatId": {
12692               "$ref": "#/definitions/packet"
12693             },
12694             "location": {
12695               "$ref": "#/definitions/packet"
12696             },
12697             "verificationId": {
12698               "$ref": "#/definitions/packet"
12699             }
12700           },
12701           "additionalProperties": false,
12702           "required": [
12703             "location",
12704             "caveatId",
12705             "verificationId"
12706           ]
12707         },
12708         "packet": {
12709           "type": "object",
12710           "properties": {
12711             "headerLen": {
12712               "type": "integer"
12713             },
12714             "start": {
12715               "type": "integer"
12716             },
12717             "totalLen": {
12718               "type": "integer"
12719             }
12720           },
12721           "additionalProperties": false,
12722           "required": [
12723             "start",
12724             "totalLen",
12725             "headerLen"
12726           ]
12727         }
12728       }
12729     }
12730   },
12731   {
12732     "Name": "MetricsAdder",
12733     "Version": 2,
12734     "Schema": {
12735       "type": "object",
12736       "properties": {
12737         "AddMetricBatches": {
12738           "type": "object",
12739           "properties": {
12740             "Params": {
12741               "$ref": "#/definitions/MetricBatchParams"
12742             },
12743             "Result": {
12744               "$ref": "#/definitions/ErrorResults"
12745             }
12746           }
12747         }
12748       },
12749       "definitions": {
12750         "Error": {
12751           "type": "object",
12752           "properties": {
12753             "Code": {
12754               "type": "string"
12755             },
12756             "Info": {
12757               "$ref": "#/definitions/ErrorInfo"
12758             },
12759             "Message": {
12760               "type": "string"
12761             }
12762           },
12763           "additionalProperties": false,
12764           "required": [
12765             "Message",
12766             "Code"
12767           ]
12768         },
12769         "ErrorInfo": {
12770           "type": "object",
12771           "properties": {
12772             "Macaroon": {
12773               "$ref": "#/definitions/Macaroon"
12774             },
12775             "MacaroonPath": {
12776               "type": "string"
12777             }
12778           },
12779           "additionalProperties": false
12780         },
12781         "ErrorResult": {
12782           "type": "object",
12783           "properties": {
12784             "Error": {
12785               "$ref": "#/definitions/Error"
12786             }
12787           },
12788           "additionalProperties": false,
12789           "required": [
12790             "Error"
12791           ]
12792         },
12793         "ErrorResults": {
12794           "type": "object",
12795           "properties": {
12796             "Results": {
12797               "type": "array",
12798               "items": {
12799                 "$ref": "#/definitions/ErrorResult"
12800               }
12801             }
12802           },
12803           "additionalProperties": false,
12804           "required": [
12805             "Results"
12806           ]
12807         },
12808         "Macaroon": {
12809           "type": "object",
12810           "properties": {
12811             "caveats": {
12812               "type": "array",
12813               "items": {
12814                 "$ref": "#/definitions/caveat"
12815               }
12816             },
12817             "data": {
12818               "type": "array",
12819               "items": {
12820                 "type": "integer"
12821               }
12822             },
12823             "id": {
12824               "$ref": "#/definitions/packet"
12825             },
12826             "location": {
12827               "$ref": "#/definitions/packet"
12828             },
12829             "sig": {
12830               "type": "array",
12831               "items": {
12832                 "type": "integer"
12833               }
12834             }
12835           },
12836           "additionalProperties": false,
12837           "required": [
12838             "data",
12839             "location",
12840             "id",
12841             "caveats",
12842             "sig"
12843           ]
12844         },
12845         "Metric": {
12846           "type": "object",
12847           "properties": {
12848             "Key": {
12849               "type": "string"
12850             },
12851             "Time": {
12852               "type": "string",
12853               "format": "date-time"
12854             },
12855             "Value": {
12856               "type": "string"
12857             }
12858           },
12859           "additionalProperties": false,
12860           "required": [
12861             "Key",
12862             "Value",
12863             "Time"
12864           ]
12865         },
12866         "MetricBatch": {
12867           "type": "object",
12868           "properties": {
12869             "CharmURL": {
12870               "type": "string"
12871             },
12872             "Created": {
12873               "type": "string",
12874               "format": "date-time"
12875             },
12876             "Metrics": {
12877               "type": "array",
12878               "items": {
12879                 "$ref": "#/definitions/Metric"
12880               }
12881             },
12882             "UUID": {
12883               "type": "string"
12884             }
12885           },
12886           "additionalProperties": false,
12887           "required": [
12888             "UUID",
12889             "CharmURL",
12890             "Created",
12891             "Metrics"
12892           ]
12893         },
12894         "MetricBatchParam": {
12895           "type": "object",
12896           "properties": {
12897             "Batch": {
12898               "$ref": "#/definitions/MetricBatch"
12899             },
12900             "Tag": {
12901               "type": "string"
12902             }
12903           },
12904           "additionalProperties": false,
12905           "required": [
12906             "Tag",
12907             "Batch"
12908           ]
12909         },
12910         "MetricBatchParams": {
12911           "type": "object",
12912           "properties": {
12913             "Batches": {
12914               "type": "array",
12915               "items": {
12916                 "$ref": "#/definitions/MetricBatchParam"
12917               }
12918             }
12919           },
12920           "additionalProperties": false,
12921           "required": [
12922             "Batches"
12923           ]
12924         },
12925         "caveat": {
12926           "type": "object",
12927           "properties": {
12928             "caveatId": {
12929               "$ref": "#/definitions/packet"
12930             },
12931             "location": {
12932               "$ref": "#/definitions/packet"
12933             },
12934             "verificationId": {
12935               "$ref": "#/definitions/packet"
12936             }
12937           },
12938           "additionalProperties": false,
12939           "required": [
12940             "location",
12941             "caveatId",
12942             "verificationId"
12943           ]
12944         },
12945         "packet": {
12946           "type": "object",
12947           "properties": {
12948             "headerLen": {
12949               "type": "integer"
12950             },
12951             "start": {
12952               "type": "integer"
12953             },
12954             "totalLen": {
12955               "type": "integer"
12956             }
12957           },
12958           "additionalProperties": false,
12959           "required": [
12960             "start",
12961             "totalLen",
12962             "headerLen"
12963           ]
12964         }
12965       }
12966     }
12967   },
12968   {
12969     "Name": "MetricsDebug",
12970     "Version": 2,
12971     "Schema": {
12972       "type": "object",
12973       "properties": {
12974         "GetMetrics": {
12975           "type": "object",
12976           "properties": {
12977             "Params": {
12978               "$ref": "#/definitions/Entities"
12979             },
12980             "Result": {
12981               "$ref": "#/definitions/MetricResults"
12982             }
12983           }
12984         },
12985         "SetMeterStatus": {
12986           "type": "object",
12987           "properties": {
12988             "Params": {
12989               "$ref": "#/definitions/MeterStatusParams"
12990             },
12991             "Result": {
12992               "$ref": "#/definitions/ErrorResults"
12993             }
12994           }
12995         }
12996       },
12997       "definitions": {
12998         "Entities": {
12999           "type": "object",
13000           "properties": {
13001             "Entities": {
13002               "type": "array",
13003               "items": {
13004                 "$ref": "#/definitions/Entity"
13005               }
13006             }
13007           },
13008           "additionalProperties": false,
13009           "required": [
13010             "Entities"
13011           ]
13012         },
13013         "Entity": {
13014           "type": "object",
13015           "properties": {
13016             "Tag": {
13017               "type": "string"
13018             }
13019           },
13020           "additionalProperties": false,
13021           "required": [
13022             "Tag"
13023           ]
13024         },
13025         "EntityMetrics": {
13026           "type": "object",
13027           "properties": {
13028             "error": {
13029               "$ref": "#/definitions/Error"
13030             },
13031             "metrics": {
13032               "type": "array",
13033               "items": {
13034                 "$ref": "#/definitions/MetricResult"
13035               }
13036             }
13037           },
13038           "additionalProperties": false
13039         },
13040         "Error": {
13041           "type": "object",
13042           "properties": {
13043             "Code": {
13044               "type": "string"
13045             },
13046             "Info": {
13047               "$ref": "#/definitions/ErrorInfo"
13048             },
13049             "Message": {
13050               "type": "string"
13051             }
13052           },
13053           "additionalProperties": false,
13054           "required": [
13055             "Message",
13056             "Code"
13057           ]
13058         },
13059         "ErrorInfo": {
13060           "type": "object",
13061           "properties": {
13062             "Macaroon": {
13063               "$ref": "#/definitions/Macaroon"
13064             },
13065             "MacaroonPath": {
13066               "type": "string"
13067             }
13068           },
13069           "additionalProperties": false
13070         },
13071         "ErrorResult": {
13072           "type": "object",
13073           "properties": {
13074             "Error": {
13075               "$ref": "#/definitions/Error"
13076             }
13077           },
13078           "additionalProperties": false,
13079           "required": [
13080             "Error"
13081           ]
13082         },
13083         "ErrorResults": {
13084           "type": "object",
13085           "properties": {
13086             "Results": {
13087               "type": "array",
13088               "items": {
13089                 "$ref": "#/definitions/ErrorResult"
13090               }
13091             }
13092           },
13093           "additionalProperties": false,
13094           "required": [
13095             "Results"
13096           ]
13097         },
13098         "Macaroon": {
13099           "type": "object",
13100           "properties": {
13101             "caveats": {
13102               "type": "array",
13103               "items": {
13104                 "$ref": "#/definitions/caveat"
13105               }
13106             },
13107             "data": {
13108               "type": "array",
13109               "items": {
13110                 "type": "integer"
13111               }
13112             },
13113             "id": {
13114               "$ref": "#/definitions/packet"
13115             },
13116             "location": {
13117               "$ref": "#/definitions/packet"
13118             },
13119             "sig": {
13120               "type": "array",
13121               "items": {
13122                 "type": "integer"
13123               }
13124             }
13125           },
13126           "additionalProperties": false,
13127           "required": [
13128             "data",
13129             "location",
13130             "id",
13131             "caveats",
13132             "sig"
13133           ]
13134         },
13135         "MeterStatusParam": {
13136           "type": "object",
13137           "properties": {
13138             "code": {
13139               "type": "string"
13140             },
13141             "info": {
13142               "type": "string"
13143             },
13144             "tag": {
13145               "type": "string"
13146             }
13147           },
13148           "additionalProperties": false,
13149           "required": [
13150             "tag",
13151             "code",
13152             "info"
13153           ]
13154         },
13155         "MeterStatusParams": {
13156           "type": "object",
13157           "properties": {
13158             "statues": {
13159               "type": "array",
13160               "items": {
13161                 "$ref": "#/definitions/MeterStatusParam"
13162               }
13163             }
13164           },
13165           "additionalProperties": false,
13166           "required": [
13167             "statues"
13168           ]
13169         },
13170         "MetricResult": {
13171           "type": "object",
13172           "properties": {
13173             "key": {
13174               "type": "string"
13175             },
13176             "time": {
13177               "type": "string",
13178               "format": "date-time"
13179             },
13180             "value": {
13181               "type": "string"
13182             }
13183           },
13184           "additionalProperties": false,
13185           "required": [
13186             "time",
13187             "key",
13188             "value"
13189           ]
13190         },
13191         "MetricResults": {
13192           "type": "object",
13193           "properties": {
13194             "results": {
13195               "type": "array",
13196               "items": {
13197                 "$ref": "#/definitions/EntityMetrics"
13198               }
13199             }
13200           },
13201           "additionalProperties": false,
13202           "required": [
13203             "results"
13204           ]
13205         },
13206         "caveat": {
13207           "type": "object",
13208           "properties": {
13209             "caveatId": {
13210               "$ref": "#/definitions/packet"
13211             },
13212             "location": {
13213               "$ref": "#/definitions/packet"
13214             },
13215             "verificationId": {
13216               "$ref": "#/definitions/packet"
13217             }
13218           },
13219           "additionalProperties": false,
13220           "required": [
13221             "location",
13222             "caveatId",
13223             "verificationId"
13224           ]
13225         },
13226         "packet": {
13227           "type": "object",
13228           "properties": {
13229             "headerLen": {
13230               "type": "integer"
13231             },
13232             "start": {
13233               "type": "integer"
13234             },
13235             "totalLen": {
13236               "type": "integer"
13237             }
13238           },
13239           "additionalProperties": false,
13240           "required": [
13241             "start",
13242             "totalLen",
13243             "headerLen"
13244           ]
13245         }
13246       }
13247     }
13248   },
13249   {
13250     "Name": "MetricsManager",
13251     "Version": 1,
13252     "Schema": {
13253       "type": "object",
13254       "properties": {
13255         "CleanupOldMetrics": {
13256           "type": "object",
13257           "properties": {
13258             "Params": {
13259               "$ref": "#/definitions/Entities"
13260             },
13261             "Result": {
13262               "$ref": "#/definitions/ErrorResults"
13263             }
13264           }
13265         },
13266         "SendMetrics": {
13267           "type": "object",
13268           "properties": {
13269             "Params": {
13270               "$ref": "#/definitions/Entities"
13271             },
13272             "Result": {
13273               "$ref": "#/definitions/ErrorResults"
13274             }
13275           }
13276         }
13277       },
13278       "definitions": {
13279         "Entities": {
13280           "type": "object",
13281           "properties": {
13282             "Entities": {
13283               "type": "array",
13284               "items": {
13285                 "$ref": "#/definitions/Entity"
13286               }
13287             }
13288           },
13289           "additionalProperties": false,
13290           "required": [
13291             "Entities"
13292           ]
13293         },
13294         "Entity": {
13295           "type": "object",
13296           "properties": {
13297             "Tag": {
13298               "type": "string"
13299             }
13300           },
13301           "additionalProperties": false,
13302           "required": [
13303             "Tag"
13304           ]
13305         },
13306         "Error": {
13307           "type": "object",
13308           "properties": {
13309             "Code": {
13310               "type": "string"
13311             },
13312             "Info": {
13313               "$ref": "#/definitions/ErrorInfo"
13314             },
13315             "Message": {
13316               "type": "string"
13317             }
13318           },
13319           "additionalProperties": false,
13320           "required": [
13321             "Message",
13322             "Code"
13323           ]
13324         },
13325         "ErrorInfo": {
13326           "type": "object",
13327           "properties": {
13328             "Macaroon": {
13329               "$ref": "#/definitions/Macaroon"
13330             },
13331             "MacaroonPath": {
13332               "type": "string"
13333             }
13334           },
13335           "additionalProperties": false
13336         },
13337         "ErrorResult": {
13338           "type": "object",
13339           "properties": {
13340             "Error": {
13341               "$ref": "#/definitions/Error"
13342             }
13343           },
13344           "additionalProperties": false,
13345           "required": [
13346             "Error"
13347           ]
13348         },
13349         "ErrorResults": {
13350           "type": "object",
13351           "properties": {
13352             "Results": {
13353               "type": "array",
13354               "items": {
13355                 "$ref": "#/definitions/ErrorResult"
13356               }
13357             }
13358           },
13359           "additionalProperties": false,
13360           "required": [
13361             "Results"
13362           ]
13363         },
13364         "Macaroon": {
13365           "type": "object",
13366           "properties": {
13367             "caveats": {
13368               "type": "array",
13369               "items": {
13370                 "$ref": "#/definitions/caveat"
13371               }
13372             },
13373             "data": {
13374               "type": "array",
13375               "items": {
13376                 "type": "integer"
13377               }
13378             },
13379             "id": {
13380               "$ref": "#/definitions/packet"
13381             },
13382             "location": {
13383               "$ref": "#/definitions/packet"
13384             },
13385             "sig": {
13386               "type": "array",
13387               "items": {
13388                 "type": "integer"
13389               }
13390             }
13391           },
13392           "additionalProperties": false,
13393           "required": [
13394             "data",
13395             "location",
13396             "id",
13397             "caveats",
13398             "sig"
13399           ]
13400         },
13401         "caveat": {
13402           "type": "object",
13403           "properties": {
13404             "caveatId": {
13405               "$ref": "#/definitions/packet"
13406             },
13407             "location": {
13408               "$ref": "#/definitions/packet"
13409             },
13410             "verificationId": {
13411               "$ref": "#/definitions/packet"
13412             }
13413           },
13414           "additionalProperties": false,
13415           "required": [
13416             "location",
13417             "caveatId",
13418             "verificationId"
13419           ]
13420         },
13421         "packet": {
13422           "type": "object",
13423           "properties": {
13424             "headerLen": {
13425               "type": "integer"
13426             },
13427             "start": {
13428               "type": "integer"
13429             },
13430             "totalLen": {
13431               "type": "integer"
13432             }
13433           },
13434           "additionalProperties": false,
13435           "required": [
13436             "start",
13437             "totalLen",
13438             "headerLen"
13439           ]
13440         }
13441       }
13442     }
13443   },
13444   {
13445     "Name": "MigrationFlag",
13446     "Version": 1,
13447     "Schema": {
13448       "type": "object",
13449       "properties": {
13450         "Phase": {
13451           "type": "object",
13452           "properties": {
13453             "Params": {
13454               "$ref": "#/definitions/Entities"
13455             },
13456             "Result": {
13457               "$ref": "#/definitions/PhaseResults"
13458             }
13459           }
13460         },
13461         "Watch": {
13462           "type": "object",
13463           "properties": {
13464             "Params": {
13465               "$ref": "#/definitions/Entities"
13466             },
13467             "Result": {
13468               "$ref": "#/definitions/NotifyWatchResults"
13469             }
13470           }
13471         }
13472       },
13473       "definitions": {
13474         "Entities": {
13475           "type": "object",
13476           "properties": {
13477             "Entities": {
13478               "type": "array",
13479               "items": {
13480                 "$ref": "#/definitions/Entity"
13481               }
13482             }
13483           },
13484           "additionalProperties": false,
13485           "required": [
13486             "Entities"
13487           ]
13488         },
13489         "Entity": {
13490           "type": "object",
13491           "properties": {
13492             "Tag": {
13493               "type": "string"
13494             }
13495           },
13496           "additionalProperties": false,
13497           "required": [
13498             "Tag"
13499           ]
13500         },
13501         "Error": {
13502           "type": "object",
13503           "properties": {
13504             "Code": {
13505               "type": "string"
13506             },
13507             "Info": {
13508               "$ref": "#/definitions/ErrorInfo"
13509             },
13510             "Message": {
13511               "type": "string"
13512             }
13513           },
13514           "additionalProperties": false,
13515           "required": [
13516             "Message",
13517             "Code"
13518           ]
13519         },
13520         "ErrorInfo": {
13521           "type": "object",
13522           "properties": {
13523             "Macaroon": {
13524               "$ref": "#/definitions/Macaroon"
13525             },
13526             "MacaroonPath": {
13527               "type": "string"
13528             }
13529           },
13530           "additionalProperties": false
13531         },
13532         "Macaroon": {
13533           "type": "object",
13534           "properties": {
13535             "caveats": {
13536               "type": "array",
13537               "items": {
13538                 "$ref": "#/definitions/caveat"
13539               }
13540             },
13541             "data": {
13542               "type": "array",
13543               "items": {
13544                 "type": "integer"
13545               }
13546             },
13547             "id": {
13548               "$ref": "#/definitions/packet"
13549             },
13550             "location": {
13551               "$ref": "#/definitions/packet"
13552             },
13553             "sig": {
13554               "type": "array",
13555               "items": {
13556                 "type": "integer"
13557               }
13558             }
13559           },
13560           "additionalProperties": false,
13561           "required": [
13562             "data",
13563             "location",
13564             "id",
13565             "caveats",
13566             "sig"
13567           ]
13568         },
13569         "NotifyWatchResult": {
13570           "type": "object",
13571           "properties": {
13572             "Error": {
13573               "$ref": "#/definitions/Error"
13574             },
13575             "NotifyWatcherId": {
13576               "type": "string"
13577             }
13578           },
13579           "additionalProperties": false,
13580           "required": [
13581             "NotifyWatcherId",
13582             "Error"
13583           ]
13584         },
13585         "NotifyWatchResults": {
13586           "type": "object",
13587           "properties": {
13588             "Results": {
13589               "type": "array",
13590               "items": {
13591                 "$ref": "#/definitions/NotifyWatchResult"
13592               }
13593             }
13594           },
13595           "additionalProperties": false,
13596           "required": [
13597             "Results"
13598           ]
13599         },
13600         "PhaseResult": {
13601           "type": "object",
13602           "properties": {
13603             "Error": {
13604               "$ref": "#/definitions/Error"
13605             },
13606             "phase": {
13607               "type": "string"
13608             }
13609           },
13610           "additionalProperties": false,
13611           "required": [
13612             "phase",
13613             "Error"
13614           ]
13615         },
13616         "PhaseResults": {
13617           "type": "object",
13618           "properties": {
13619             "Results": {
13620               "type": "array",
13621               "items": {
13622                 "$ref": "#/definitions/PhaseResult"
13623               }
13624             }
13625           },
13626           "additionalProperties": false,
13627           "required": [
13628             "Results"
13629           ]
13630         },
13631         "caveat": {
13632           "type": "object",
13633           "properties": {
13634             "caveatId": {
13635               "$ref": "#/definitions/packet"
13636             },
13637             "location": {
13638               "$ref": "#/definitions/packet"
13639             },
13640             "verificationId": {
13641               "$ref": "#/definitions/packet"
13642             }
13643           },
13644           "additionalProperties": false,
13645           "required": [
13646             "location",
13647             "caveatId",
13648             "verificationId"
13649           ]
13650         },
13651         "packet": {
13652           "type": "object",
13653           "properties": {
13654             "headerLen": {
13655               "type": "integer"
13656             },
13657             "start": {
13658               "type": "integer"
13659             },
13660             "totalLen": {
13661               "type": "integer"
13662             }
13663           },
13664           "additionalProperties": false,
13665           "required": [
13666             "start",
13667             "totalLen",
13668             "headerLen"
13669           ]
13670         }
13671       }
13672     }
13673   },
13674   {
13675     "Name": "MigrationMaster",
13676     "Version": 1,
13677     "Schema": {
13678       "type": "object",
13679       "properties": {
13680         "Export": {
13681           "type": "object",
13682           "properties": {
13683             "Result": {
13684               "$ref": "#/definitions/SerializedModel"
13685             }
13686           }
13687         },
13688         "GetMigrationStatus": {
13689           "type": "object",
13690           "properties": {
13691             "Result": {
13692               "$ref": "#/definitions/FullMigrationStatus"
13693             }
13694           }
13695         },
13696         "SetPhase": {
13697           "type": "object",
13698           "properties": {
13699             "Params": {
13700               "$ref": "#/definitions/SetMigrationPhaseArgs"
13701             }
13702           }
13703         },
13704         "Watch": {
13705           "type": "object",
13706           "properties": {
13707             "Result": {
13708               "$ref": "#/definitions/NotifyWatchResult"
13709             }
13710           }
13711         }
13712       },
13713       "definitions": {
13714         "Error": {
13715           "type": "object",
13716           "properties": {
13717             "Code": {
13718               "type": "string"
13719             },
13720             "Info": {
13721               "$ref": "#/definitions/ErrorInfo"
13722             },
13723             "Message": {
13724               "type": "string"
13725             }
13726           },
13727           "additionalProperties": false,
13728           "required": [
13729             "Message",
13730             "Code"
13731           ]
13732         },
13733         "ErrorInfo": {
13734           "type": "object",
13735           "properties": {
13736             "Macaroon": {
13737               "$ref": "#/definitions/Macaroon"
13738             },
13739             "MacaroonPath": {
13740               "type": "string"
13741             }
13742           },
13743           "additionalProperties": false
13744         },
13745         "FullMigrationStatus": {
13746           "type": "object",
13747           "properties": {
13748             "attempt": {
13749               "type": "integer"
13750             },
13751             "phase": {
13752               "type": "string"
13753             },
13754             "spec": {
13755               "$ref": "#/definitions/ModelMigrationSpec"
13756             }
13757           },
13758           "additionalProperties": false,
13759           "required": [
13760             "spec",
13761             "attempt",
13762             "phase"
13763           ]
13764         },
13765         "Macaroon": {
13766           "type": "object",
13767           "properties": {
13768             "caveats": {
13769               "type": "array",
13770               "items": {
13771                 "$ref": "#/definitions/caveat"
13772               }
13773             },
13774             "data": {
13775               "type": "array",
13776               "items": {
13777                 "type": "integer"
13778               }
13779             },
13780             "id": {
13781               "$ref": "#/definitions/packet"
13782             },
13783             "location": {
13784               "$ref": "#/definitions/packet"
13785             },
13786             "sig": {
13787               "type": "array",
13788               "items": {
13789                 "type": "integer"
13790               }
13791             }
13792           },
13793           "additionalProperties": false,
13794           "required": [
13795             "data",
13796             "location",
13797             "id",
13798             "caveats",
13799             "sig"
13800           ]
13801         },
13802         "ModelMigrationSpec": {
13803           "type": "object",
13804           "properties": {
13805             "model-tag": {
13806               "type": "string"
13807             },
13808             "target-info": {
13809               "$ref": "#/definitions/ModelMigrationTargetInfo"
13810             }
13811           },
13812           "additionalProperties": false,
13813           "required": [
13814             "model-tag",
13815             "target-info"
13816           ]
13817         },
13818         "ModelMigrationTargetInfo": {
13819           "type": "object",
13820           "properties": {
13821             "addrs": {
13822               "type": "array",
13823               "items": {
13824                 "type": "string"
13825               }
13826             },
13827             "auth-tag": {
13828               "type": "string"
13829             },
13830             "ca-cert": {
13831               "type": "string"
13832             },
13833             "controller-tag": {
13834               "type": "string"
13835             },
13836             "password": {
13837               "type": "string"
13838             }
13839           },
13840           "additionalProperties": false,
13841           "required": [
13842             "controller-tag",
13843             "addrs",
13844             "ca-cert",
13845             "auth-tag",
13846             "password"
13847           ]
13848         },
13849         "NotifyWatchResult": {
13850           "type": "object",
13851           "properties": {
13852             "Error": {
13853               "$ref": "#/definitions/Error"
13854             },
13855             "NotifyWatcherId": {
13856               "type": "string"
13857             }
13858           },
13859           "additionalProperties": false,
13860           "required": [
13861             "NotifyWatcherId",
13862             "Error"
13863           ]
13864         },
13865         "SerializedModel": {
13866           "type": "object",
13867           "properties": {
13868             "bytes": {
13869               "type": "array",
13870               "items": {
13871                 "type": "integer"
13872               }
13873             }
13874           },
13875           "additionalProperties": false,
13876           "required": [
13877             "bytes"
13878           ]
13879         },
13880         "SetMigrationPhaseArgs": {
13881           "type": "object",
13882           "properties": {
13883             "phase": {
13884               "type": "string"
13885             }
13886           },
13887           "additionalProperties": false,
13888           "required": [
13889             "phase"
13890           ]
13891         },
13892         "caveat": {
13893           "type": "object",
13894           "properties": {
13895             "caveatId": {
13896               "$ref": "#/definitions/packet"
13897             },
13898             "location": {
13899               "$ref": "#/definitions/packet"
13900             },
13901             "verificationId": {
13902               "$ref": "#/definitions/packet"
13903             }
13904           },
13905           "additionalProperties": false,
13906           "required": [
13907             "location",
13908             "caveatId",
13909             "verificationId"
13910           ]
13911         },
13912         "packet": {
13913           "type": "object",
13914           "properties": {
13915             "headerLen": {
13916               "type": "integer"
13917             },
13918             "start": {
13919               "type": "integer"
13920             },
13921             "totalLen": {
13922               "type": "integer"
13923             }
13924           },
13925           "additionalProperties": false,
13926           "required": [
13927             "start",
13928             "totalLen",
13929             "headerLen"
13930           ]
13931         }
13932       }
13933     }
13934   },
13935   {
13936     "Name": "MigrationMinion",
13937     "Version": 1,
13938     "Schema": {
13939       "type": "object",
13940       "properties": {
13941         "Watch": {
13942           "type": "object",
13943           "properties": {
13944             "Result": {
13945               "$ref": "#/definitions/NotifyWatchResult"
13946             }
13947           }
13948         }
13949       },
13950       "definitions": {
13951         "Error": {
13952           "type": "object",
13953           "properties": {
13954             "Code": {
13955               "type": "string"
13956             },
13957             "Info": {
13958               "$ref": "#/definitions/ErrorInfo"
13959             },
13960             "Message": {
13961               "type": "string"
13962             }
13963           },
13964           "additionalProperties": false,
13965           "required": [
13966             "Message",
13967             "Code"
13968           ]
13969         },
13970         "ErrorInfo": {
13971           "type": "object",
13972           "properties": {
13973             "Macaroon": {
13974               "$ref": "#/definitions/Macaroon"
13975             },
13976             "MacaroonPath": {
13977               "type": "string"
13978             }
13979           },
13980           "additionalProperties": false
13981         },
13982         "Macaroon": {
13983           "type": "object",
13984           "properties": {
13985             "caveats": {
13986               "type": "array",
13987               "items": {
13988                 "$ref": "#/definitions/caveat"
13989               }
13990             },
13991             "data": {
13992               "type": "array",
13993               "items": {
13994                 "type": "integer"
13995               }
13996             },
13997             "id": {
13998               "$ref": "#/definitions/packet"
13999             },
14000             "location": {
14001               "$ref": "#/definitions/packet"
14002             },
14003             "sig": {
14004               "type": "array",
14005               "items": {
14006                 "type": "integer"
14007               }
14008             }
14009           },
14010           "additionalProperties": false,
14011           "required": [
14012             "data",
14013             "location",
14014             "id",
14015             "caveats",
14016             "sig"
14017           ]
14018         },
14019         "NotifyWatchResult": {
14020           "type": "object",
14021           "properties": {
14022             "Error": {
14023               "$ref": "#/definitions/Error"
14024             },
14025             "NotifyWatcherId": {
14026               "type": "string"
14027             }
14028           },
14029           "additionalProperties": false,
14030           "required": [
14031             "NotifyWatcherId",
14032             "Error"
14033           ]
14034         },
14035         "caveat": {
14036           "type": "object",
14037           "properties": {
14038             "caveatId": {
14039               "$ref": "#/definitions/packet"
14040             },
14041             "location": {
14042               "$ref": "#/definitions/packet"
14043             },
14044             "verificationId": {
14045               "$ref": "#/definitions/packet"
14046             }
14047           },
14048           "additionalProperties": false,
14049           "required": [
14050             "location",
14051             "caveatId",
14052             "verificationId"
14053           ]
14054         },
14055         "packet": {
14056           "type": "object",
14057           "properties": {
14058             "headerLen": {
14059               "type": "integer"
14060             },
14061             "start": {
14062               "type": "integer"
14063             },
14064             "totalLen": {
14065               "type": "integer"
14066             }
14067           },
14068           "additionalProperties": false,
14069           "required": [
14070             "start",
14071             "totalLen",
14072             "headerLen"
14073           ]
14074         }
14075       }
14076     }
14077   },
14078   {
14079     "Name": "MigrationStatusWatcher",
14080     "Version": 1,
14081     "Schema": {
14082       "type": "object",
14083       "properties": {
14084         "Next": {
14085           "type": "object",
14086           "properties": {
14087             "Result": {
14088               "$ref": "#/definitions/MigrationStatus"
14089             }
14090           }
14091         },
14092         "Stop": {
14093           "type": "object"
14094         }
14095       },
14096       "definitions": {
14097         "MigrationStatus": {
14098           "type": "object",
14099           "properties": {
14100             "attempt": {
14101               "type": "integer"
14102             },
14103             "phase": {
14104               "type": "string"
14105             },
14106             "source-api-addrs": {
14107               "type": "array",
14108               "items": {
14109                 "type": "string"
14110               }
14111             },
14112             "source-ca-cert": {
14113               "type": "string"
14114             },
14115             "target-api-addrs": {
14116               "type": "array",
14117               "items": {
14118                 "type": "string"
14119               }
14120             },
14121             "target-ca-cert": {
14122               "type": "string"
14123             }
14124           },
14125           "additionalProperties": false,
14126           "required": [
14127             "attempt",
14128             "phase",
14129             "source-api-addrs",
14130             "source-ca-cert",
14131             "target-api-addrs",
14132             "target-ca-cert"
14133           ]
14134         }
14135       }
14136     }
14137   },
14138   {
14139     "Name": "MigrationTarget",
14140     "Version": 1,
14141     "Schema": {
14142       "type": "object",
14143       "properties": {
14144         "Abort": {
14145           "type": "object",
14146           "properties": {
14147             "Params": {
14148               "$ref": "#/definitions/ModelArgs"
14149             }
14150           }
14151         },
14152         "Activate": {
14153           "type": "object",
14154           "properties": {
14155             "Params": {
14156               "$ref": "#/definitions/ModelArgs"
14157             }
14158           }
14159         },
14160         "Import": {
14161           "type": "object",
14162           "properties": {
14163             "Params": {
14164               "$ref": "#/definitions/SerializedModel"
14165             }
14166           }
14167         }
14168       },
14169       "definitions": {
14170         "ModelArgs": {
14171           "type": "object",
14172           "properties": {
14173             "model-tag": {
14174               "type": "string"
14175             }
14176           },
14177           "additionalProperties": false,
14178           "required": [
14179             "model-tag"
14180           ]
14181         },
14182         "SerializedModel": {
14183           "type": "object",
14184           "properties": {
14185             "bytes": {
14186               "type": "array",
14187               "items": {
14188                 "type": "integer"
14189               }
14190             }
14191           },
14192           "additionalProperties": false,
14193           "required": [
14194             "bytes"
14195           ]
14196         }
14197       }
14198     }
14199   },
14200   {
14201     "Name": "ModelManager",
14202     "Version": 2,
14203     "Schema": {
14204       "type": "object",
14205       "properties": {
14206         "ConfigSkeleton": {
14207           "type": "object",
14208           "properties": {
14209             "Params": {
14210               "$ref": "#/definitions/ModelSkeletonConfigArgs"
14211             },
14212             "Result": {
14213               "$ref": "#/definitions/ModelConfigResult"
14214             }
14215           }
14216         },
14217         "CreateModel": {
14218           "type": "object",
14219           "properties": {
14220             "Params": {
14221               "$ref": "#/definitions/ModelCreateArgs"
14222             },
14223             "Result": {
14224               "$ref": "#/definitions/Model"
14225             }
14226           }
14227         },
14228         "ListModels": {
14229           "type": "object",
14230           "properties": {
14231             "Params": {
14232               "$ref": "#/definitions/Entity"
14233             },
14234             "Result": {
14235               "$ref": "#/definitions/UserModelList"
14236             }
14237           }
14238         },
14239         "ModelInfo": {
14240           "type": "object",
14241           "properties": {
14242             "Params": {
14243               "$ref": "#/definitions/Entities"
14244             },
14245             "Result": {
14246               "$ref": "#/definitions/ModelInfoResults"
14247             }
14248           }
14249         },
14250         "ModifyModelAccess": {
14251           "type": "object",
14252           "properties": {
14253             "Params": {
14254               "$ref": "#/definitions/ModifyModelAccessRequest"
14255             },
14256             "Result": {
14257               "$ref": "#/definitions/ErrorResults"
14258             }
14259           }
14260         }
14261       },
14262       "definitions": {
14263         "Entities": {
14264           "type": "object",
14265           "properties": {
14266             "Entities": {
14267               "type": "array",
14268               "items": {
14269                 "$ref": "#/definitions/Entity"
14270               }
14271             }
14272           },
14273           "additionalProperties": false,
14274           "required": [
14275             "Entities"
14276           ]
14277         },
14278         "Entity": {
14279           "type": "object",
14280           "properties": {
14281             "Tag": {
14282               "type": "string"
14283             }
14284           },
14285           "additionalProperties": false,
14286           "required": [
14287             "Tag"
14288           ]
14289         },
14290         "EntityStatus": {
14291           "type": "object",
14292           "properties": {
14293             "Data": {
14294               "type": "object",
14295               "patternProperties": {
14296                 ".*": {
14297                   "type": "object",
14298                   "additionalProperties": true
14299                 }
14300               }
14301             },
14302             "Info": {
14303               "type": "string"
14304             },
14305             "Since": {
14306               "type": "string",
14307               "format": "date-time"
14308             },
14309             "Status": {
14310               "type": "string"
14311             }
14312           },
14313           "additionalProperties": false,
14314           "required": [
14315             "Status",
14316             "Info",
14317             "Data",
14318             "Since"
14319           ]
14320         },
14321         "Error": {
14322           "type": "object",
14323           "properties": {
14324             "Code": {
14325               "type": "string"
14326             },
14327             "Info": {
14328               "$ref": "#/definitions/ErrorInfo"
14329             },
14330             "Message": {
14331               "type": "string"
14332             }
14333           },
14334           "additionalProperties": false,
14335           "required": [
14336             "Message",
14337             "Code"
14338           ]
14339         },
14340         "ErrorInfo": {
14341           "type": "object",
14342           "properties": {
14343             "Macaroon": {
14344               "$ref": "#/definitions/Macaroon"
14345             },
14346             "MacaroonPath": {
14347               "type": "string"
14348             }
14349           },
14350           "additionalProperties": false
14351         },
14352         "ErrorResult": {
14353           "type": "object",
14354           "properties": {
14355             "Error": {
14356               "$ref": "#/definitions/Error"
14357             }
14358           },
14359           "additionalProperties": false,
14360           "required": [
14361             "Error"
14362           ]
14363         },
14364         "ErrorResults": {
14365           "type": "object",
14366           "properties": {
14367             "Results": {
14368               "type": "array",
14369               "items": {
14370                 "$ref": "#/definitions/ErrorResult"
14371               }
14372             }
14373           },
14374           "additionalProperties": false,
14375           "required": [
14376             "Results"
14377           ]
14378         },
14379         "Macaroon": {
14380           "type": "object",
14381           "properties": {
14382             "caveats": {
14383               "type": "array",
14384               "items": {
14385                 "$ref": "#/definitions/caveat"
14386               }
14387             },
14388             "data": {
14389               "type": "array",
14390               "items": {
14391                 "type": "integer"
14392               }
14393             },
14394             "id": {
14395               "$ref": "#/definitions/packet"
14396             },
14397             "location": {
14398               "$ref": "#/definitions/packet"
14399             },
14400             "sig": {
14401               "type": "array",
14402               "items": {
14403                 "type": "integer"
14404               }
14405             }
14406           },
14407           "additionalProperties": false,
14408           "required": [
14409             "data",
14410             "location",
14411             "id",
14412             "caveats",
14413             "sig"
14414           ]
14415         },
14416         "Model": {
14417           "type": "object",
14418           "properties": {
14419             "Name": {
14420               "type": "string"
14421             },
14422             "OwnerTag": {
14423               "type": "string"
14424             },
14425             "UUID": {
14426               "type": "string"
14427             }
14428           },
14429           "additionalProperties": false,
14430           "required": [
14431             "Name",
14432             "UUID",
14433             "OwnerTag"
14434           ]
14435         },
14436         "ModelConfigResult": {
14437           "type": "object",
14438           "properties": {
14439             "Config": {
14440               "type": "object",
14441               "patternProperties": {
14442                 ".*": {
14443                   "type": "object",
14444                   "additionalProperties": true
14445                 }
14446               }
14447             }
14448           },
14449           "additionalProperties": false,
14450           "required": [
14451             "Config"
14452           ]
14453         },
14454         "ModelCreateArgs": {
14455           "type": "object",
14456           "properties": {
14457             "Account": {
14458               "type": "object",
14459               "patternProperties": {
14460                 ".*": {
14461                   "type": "object",
14462                   "additionalProperties": true
14463                 }
14464               }
14465             },
14466             "Config": {
14467               "type": "object",
14468               "patternProperties": {
14469                 ".*": {
14470                   "type": "object",
14471                   "additionalProperties": true
14472                 }
14473               }
14474             },
14475             "OwnerTag": {
14476               "type": "string"
14477             }
14478           },
14479           "additionalProperties": false,
14480           "required": [
14481             "OwnerTag",
14482             "Account",
14483             "Config"
14484           ]
14485         },
14486         "ModelInfo": {
14487           "type": "object",
14488           "properties": {
14489             "Cloud": {
14490               "type": "string"
14491             },
14492             "DefaultSeries": {
14493               "type": "string"
14494             },
14495             "Life": {
14496               "type": "string"
14497             },
14498             "Name": {
14499               "type": "string"
14500             },
14501             "OwnerTag": {
14502               "type": "string"
14503             },
14504             "ProviderType": {
14505               "type": "string"
14506             },
14507             "ServerUUID": {
14508               "type": "string"
14509             },
14510             "Status": {
14511               "$ref": "#/definitions/EntityStatus"
14512             },
14513             "UUID": {
14514               "type": "string"
14515             },
14516             "Users": {
14517               "type": "array",
14518               "items": {
14519                 "$ref": "#/definitions/ModelUserInfo"
14520               }
14521             }
14522           },
14523           "additionalProperties": false,
14524           "required": [
14525             "Name",
14526             "UUID",
14527             "ServerUUID",
14528             "ProviderType",
14529             "DefaultSeries",
14530             "Cloud",
14531             "OwnerTag",
14532             "Life",
14533             "Status",
14534             "Users"
14535           ]
14536         },
14537         "ModelInfoResult": {
14538           "type": "object",
14539           "properties": {
14540             "error": {
14541               "$ref": "#/definitions/Error"
14542             },
14543             "result": {
14544               "$ref": "#/definitions/ModelInfo"
14545             }
14546           },
14547           "additionalProperties": false
14548         },
14549         "ModelInfoResults": {
14550           "type": "object",
14551           "properties": {
14552             "results": {
14553               "type": "array",
14554               "items": {
14555                 "$ref": "#/definitions/ModelInfoResult"
14556               }
14557             }
14558           },
14559           "additionalProperties": false,
14560           "required": [
14561             "results"
14562           ]
14563         },
14564         "ModelSkeletonConfigArgs": {
14565           "type": "object",
14566           "properties": {
14567             "Provider": {
14568               "type": "string"
14569             },
14570             "Region": {
14571               "type": "string"
14572             }
14573           },
14574           "additionalProperties": false,
14575           "required": [
14576             "Provider",
14577             "Region"
14578           ]
14579         },
14580         "ModelUserInfo": {
14581           "type": "object",
14582           "properties": {
14583             "access": {
14584               "type": "string"
14585             },
14586             "displayname": {
14587               "type": "string"
14588             },
14589             "lastconnection": {
14590               "type": "string",
14591               "format": "date-time"
14592             },
14593             "user": {
14594               "type": "string"
14595             }
14596           },
14597           "additionalProperties": false,
14598           "required": [
14599             "user",
14600             "displayname",
14601             "lastconnection",
14602             "access"
14603           ]
14604         },
14605         "ModifyModelAccess": {
14606           "type": "object",
14607           "properties": {
14608             "access": {
14609               "type": "string"
14610             },
14611             "action": {
14612               "type": "string"
14613             },
14614             "model-tag": {
14615               "type": "string"
14616             },
14617             "user-tag": {
14618               "type": "string"
14619             }
14620           },
14621           "additionalProperties": false,
14622           "required": [
14623             "user-tag",
14624             "action",
14625             "access",
14626             "model-tag"
14627           ]
14628         },
14629         "ModifyModelAccessRequest": {
14630           "type": "object",
14631           "properties": {
14632             "changes": {
14633               "type": "array",
14634               "items": {
14635                 "$ref": "#/definitions/ModifyModelAccess"
14636               }
14637             }
14638           },
14639           "additionalProperties": false,
14640           "required": [
14641             "changes"
14642           ]
14643         },
14644         "UserModel": {
14645           "type": "object",
14646           "properties": {
14647             "LastConnection": {
14648               "type": "string",
14649               "format": "date-time"
14650             },
14651             "Model": {
14652               "$ref": "#/definitions/Model"
14653             }
14654           },
14655           "additionalProperties": false,
14656           "required": [
14657             "Model",
14658             "LastConnection"
14659           ]
14660         },
14661         "UserModelList": {
14662           "type": "object",
14663           "properties": {
14664             "UserModels": {
14665               "type": "array",
14666               "items": {
14667                 "$ref": "#/definitions/UserModel"
14668               }
14669             }
14670           },
14671           "additionalProperties": false,
14672           "required": [
14673             "UserModels"
14674           ]
14675         },
14676         "caveat": {
14677           "type": "object",
14678           "properties": {
14679             "caveatId": {
14680               "$ref": "#/definitions/packet"
14681             },
14682             "location": {
14683               "$ref": "#/definitions/packet"
14684             },
14685             "verificationId": {
14686               "$ref": "#/definitions/packet"
14687             }
14688           },
14689           "additionalProperties": false,
14690           "required": [
14691             "location",
14692             "caveatId",
14693             "verificationId"
14694           ]
14695         },
14696         "packet": {
14697           "type": "object",
14698           "properties": {
14699             "headerLen": {
14700               "type": "integer"
14701             },
14702             "start": {
14703               "type": "integer"
14704             },
14705             "totalLen": {
14706               "type": "integer"
14707             }
14708           },
14709           "additionalProperties": false,
14710           "required": [
14711             "start",
14712             "totalLen",
14713             "headerLen"
14714           ]
14715         }
14716       }
14717     }
14718   },
14719   {
14720     "Name": "NotifyWatcher",
14721     "Version": 1,
14722     "Schema": {
14723       "type": "object",
14724       "properties": {
14725         "Next": {
14726           "type": "object"
14727         },
14728         "Stop": {
14729           "type": "object"
14730         }
14731       }
14732     }
14733   },
14734   {
14735     "Name": "Pinger",
14736     "Version": 1,
14737     "Schema": {
14738       "type": "object",
14739       "properties": {
14740         "Ping": {
14741           "type": "object"
14742         },
14743         "Stop": {
14744           "type": "object"
14745         }
14746       }
14747     }
14748   },
14749   {
14750     "Name": "Provisioner",
14751     "Version": 3,
14752     "Schema": {
14753       "type": "object",
14754       "properties": {
14755         "APIAddresses": {
14756           "type": "object",
14757           "properties": {
14758             "Result": {
14759               "$ref": "#/definitions/StringsResult"
14760             }
14761           }
14762         },
14763         "APIHostPorts": {
14764           "type": "object",
14765           "properties": {
14766             "Result": {
14767               "$ref": "#/definitions/APIHostPortsResult"
14768             }
14769           }
14770         },
14771         "CACert": {
14772           "type": "object",
14773           "properties": {
14774             "Result": {
14775               "$ref": "#/definitions/BytesResult"
14776             }
14777           }
14778         },
14779         "Constraints": {
14780           "type": "object",
14781           "properties": {
14782             "Params": {
14783               "$ref": "#/definitions/Entities"
14784             },
14785             "Result": {
14786               "$ref": "#/definitions/ConstraintsResults"
14787             }
14788           }
14789         },
14790         "ContainerConfig": {
14791           "type": "object",
14792           "properties": {
14793             "Result": {
14794               "$ref": "#/definitions/ContainerConfig"
14795             }
14796           }
14797         },
14798         "ContainerManagerConfig": {
14799           "type": "object",
14800           "properties": {
14801             "Params": {
14802               "$ref": "#/definitions/ContainerManagerConfigParams"
14803             },
14804             "Result": {
14805               "$ref": "#/definitions/ContainerManagerConfig"
14806             }
14807           }
14808         },
14809         "DistributionGroup": {
14810           "type": "object",
14811           "properties": {
14812             "Params": {
14813               "$ref": "#/definitions/Entities"
14814             },
14815             "Result": {
14816               "$ref": "#/definitions/DistributionGroupResults"
14817             }
14818           }
14819         },
14820         "EnsureDead": {
14821           "type": "object",
14822           "properties": {
14823             "Params": {
14824               "$ref": "#/definitions/Entities"
14825             },
14826             "Result": {
14827               "$ref": "#/definitions/ErrorResults"
14828             }
14829           }
14830         },
14831         "FindTools": {
14832           "type": "object",
14833           "properties": {
14834             "Params": {
14835               "$ref": "#/definitions/FindToolsParams"
14836             },
14837             "Result": {
14838               "$ref": "#/definitions/FindToolsResult"
14839             }
14840           }
14841         },
14842         "GetContainerInterfaceInfo": {
14843           "type": "object",
14844           "properties": {
14845             "Params": {
14846               "$ref": "#/definitions/Entities"
14847             },
14848             "Result": {
14849               "$ref": "#/definitions/MachineNetworkConfigResults"
14850             }
14851           }
14852         },
14853         "InstanceId": {
14854           "type": "object",
14855           "properties": {
14856             "Params": {
14857               "$ref": "#/definitions/Entities"
14858             },
14859             "Result": {
14860               "$ref": "#/definitions/StringResults"
14861             }
14862           }
14863         },
14864         "InstanceStatus": {
14865           "type": "object",
14866           "properties": {
14867             "Params": {
14868               "$ref": "#/definitions/Entities"
14869             },
14870             "Result": {
14871               "$ref": "#/definitions/StatusResults"
14872             }
14873           }
14874         },
14875         "Life": {
14876           "type": "object",
14877           "properties": {
14878             "Params": {
14879               "$ref": "#/definitions/Entities"
14880             },
14881             "Result": {
14882               "$ref": "#/definitions/LifeResults"
14883             }
14884           }
14885         },
14886         "MachinesWithTransientErrors": {
14887           "type": "object",
14888           "properties": {
14889             "Result": {
14890               "$ref": "#/definitions/StatusResults"
14891             }
14892           }
14893         },
14894         "ModelConfig": {
14895           "type": "object",
14896           "properties": {
14897             "Result": {
14898               "$ref": "#/definitions/ModelConfigResult"
14899             }
14900           }
14901         },
14902         "ModelUUID": {
14903           "type": "object",
14904           "properties": {
14905             "Result": {
14906               "$ref": "#/definitions/StringResult"
14907             }
14908           }
14909         },
14910         "PrepareContainerInterfaceInfo": {
14911           "type": "object",
14912           "properties": {
14913             "Params": {
14914               "$ref": "#/definitions/Entities"
14915             },
14916             "Result": {
14917               "$ref": "#/definitions/MachineNetworkConfigResults"
14918             }
14919           }
14920         },
14921         "ProvisioningInfo": {
14922           "type": "object",
14923           "properties": {
14924             "Params": {
14925               "$ref": "#/definitions/Entities"
14926             },
14927             "Result": {
14928               "$ref": "#/definitions/ProvisioningInfoResults"
14929             }
14930           }
14931         },
14932         "ReleaseContainerAddresses": {
14933           "type": "object",
14934           "properties": {
14935             "Params": {
14936               "$ref": "#/definitions/Entities"
14937             },
14938             "Result": {
14939               "$ref": "#/definitions/ErrorResults"
14940             }
14941           }
14942         },
14943         "Remove": {
14944           "type": "object",
14945           "properties": {
14946             "Params": {
14947               "$ref": "#/definitions/Entities"
14948             },
14949             "Result": {
14950               "$ref": "#/definitions/ErrorResults"
14951             }
14952           }
14953         },
14954         "Series": {
14955           "type": "object",
14956           "properties": {
14957             "Params": {
14958               "$ref": "#/definitions/Entities"
14959             },
14960             "Result": {
14961               "$ref": "#/definitions/StringResults"
14962             }
14963           }
14964         },
14965         "SetInstanceInfo": {
14966           "type": "object",
14967           "properties": {
14968             "Params": {
14969               "$ref": "#/definitions/InstancesInfo"
14970             },
14971             "Result": {
14972               "$ref": "#/definitions/ErrorResults"
14973             }
14974           }
14975         },
14976         "SetInstanceStatus": {
14977           "type": "object",
14978           "properties": {
14979             "Params": {
14980               "$ref": "#/definitions/SetStatus"
14981             },
14982             "Result": {
14983               "$ref": "#/definitions/ErrorResults"
14984             }
14985           }
14986         },
14987         "SetPasswords": {
14988           "type": "object",
14989           "properties": {
14990             "Params": {
14991               "$ref": "#/definitions/EntityPasswords"
14992             },
14993             "Result": {
14994               "$ref": "#/definitions/ErrorResults"
14995             }
14996           }
14997         },
14998         "SetStatus": {
14999           "type": "object",
15000           "properties": {
15001             "Params": {
15002               "$ref": "#/definitions/SetStatus"
15003             },
15004             "Result": {
15005               "$ref": "#/definitions/ErrorResults"
15006             }
15007           }
15008         },
15009         "SetSupportedContainers": {
15010           "type": "object",
15011           "properties": {
15012             "Params": {
15013               "$ref": "#/definitions/MachineContainersParams"
15014             },
15015             "Result": {
15016               "$ref": "#/definitions/ErrorResults"
15017             }
15018           }
15019         },
15020         "StateAddresses": {
15021           "type": "object",
15022           "properties": {
15023             "Result": {
15024               "$ref": "#/definitions/StringsResult"
15025             }
15026           }
15027         },
15028         "Status": {
15029           "type": "object",
15030           "properties": {
15031             "Params": {
15032               "$ref": "#/definitions/Entities"
15033             },
15034             "Result": {
15035               "$ref": "#/definitions/StatusResults"
15036             }
15037           }
15038         },
15039         "Tools": {
15040           "type": "object",
15041           "properties": {
15042             "Params": {
15043               "$ref": "#/definitions/Entities"
15044             },
15045             "Result": {
15046               "$ref": "#/definitions/ToolsResults"
15047             }
15048           }
15049         },
15050         "UpdateStatus": {
15051           "type": "object",
15052           "properties": {
15053             "Params": {
15054               "$ref": "#/definitions/SetStatus"
15055             },
15056             "Result": {
15057               "$ref": "#/definitions/ErrorResults"
15058             }
15059           }
15060         },
15061         "WatchAPIHostPorts": {
15062           "type": "object",
15063           "properties": {
15064             "Result": {
15065               "$ref": "#/definitions/NotifyWatchResult"
15066             }
15067           }
15068         },
15069         "WatchAllContainers": {
15070           "type": "object",
15071           "properties": {
15072             "Params": {
15073               "$ref": "#/definitions/WatchContainers"
15074             },
15075             "Result": {
15076               "$ref": "#/definitions/StringsWatchResults"
15077             }
15078           }
15079         },
15080         "WatchContainers": {
15081           "type": "object",
15082           "properties": {
15083             "Params": {
15084               "$ref": "#/definitions/WatchContainers"
15085             },
15086             "Result": {
15087               "$ref": "#/definitions/StringsWatchResults"
15088             }
15089           }
15090         },
15091         "WatchForModelConfigChanges": {
15092           "type": "object",
15093           "properties": {
15094             "Result": {
15095               "$ref": "#/definitions/NotifyWatchResult"
15096             }
15097           }
15098         },
15099         "WatchMachineErrorRetry": {
15100           "type": "object",
15101           "properties": {
15102             "Result": {
15103               "$ref": "#/definitions/NotifyWatchResult"
15104             }
15105           }
15106         },
15107         "WatchModelMachines": {
15108           "type": "object",
15109           "properties": {
15110             "Result": {
15111               "$ref": "#/definitions/StringsWatchResult"
15112             }
15113           }
15114         }
15115       },
15116       "definitions": {
15117         "APIHostPortsResult": {
15118           "type": "object",
15119           "properties": {
15120             "Servers": {
15121               "type": "array",
15122               "items": {
15123                 "type": "array",
15124                 "items": {
15125                   "$ref": "#/definitions/HostPort"
15126                 }
15127               }
15128             }
15129           },
15130           "additionalProperties": false,
15131           "required": [
15132             "Servers"
15133           ]
15134         },
15135         "Address": {
15136           "type": "object",
15137           "properties": {
15138             "Scope": {
15139               "type": "string"
15140             },
15141             "SpaceName": {
15142               "type": "string"
15143             },
15144             "Type": {
15145               "type": "string"
15146             },
15147             "Value": {
15148               "type": "string"
15149             }
15150           },
15151           "additionalProperties": false,
15152           "required": [
15153             "Value",
15154             "Type",
15155             "Scope"
15156           ]
15157         },
15158         "Binary": {
15159           "type": "object",
15160           "properties": {
15161             "Arch": {
15162               "type": "string"
15163             },
15164             "Number": {
15165               "$ref": "#/definitions/Number"
15166             },
15167             "Series": {
15168               "type": "string"
15169             }
15170           },
15171           "additionalProperties": false,
15172           "required": [
15173             "Number",
15174             "Series",
15175             "Arch"
15176           ]
15177         },
15178         "BytesResult": {
15179           "type": "object",
15180           "properties": {
15181             "Result": {
15182               "type": "array",
15183               "items": {
15184                 "type": "integer"
15185               }
15186             }
15187           },
15188           "additionalProperties": false,
15189           "required": [
15190             "Result"
15191           ]
15192         },
15193         "CloudImageMetadata": {
15194           "type": "object",
15195           "properties": {
15196             "arch": {
15197               "type": "string"
15198             },
15199             "image_id": {
15200               "type": "string"
15201             },
15202             "priority": {
15203               "type": "integer"
15204             },
15205             "region": {
15206               "type": "string"
15207             },
15208             "root_storage_size": {
15209               "type": "integer"
15210             },
15211             "root_storage_type": {
15212               "type": "string"
15213             },
15214             "series": {
15215               "type": "string"
15216             },
15217             "source": {
15218               "type": "string"
15219             },
15220             "stream": {
15221               "type": "string"
15222             },
15223             "version": {
15224               "type": "string"
15225             },
15226             "virt_type": {
15227               "type": "string"
15228             }
15229           },
15230           "additionalProperties": false,
15231           "required": [
15232             "image_id",
15233             "region",
15234             "version",
15235             "series",
15236             "arch",
15237             "source",
15238             "priority"
15239           ]
15240         },
15241         "ConstraintsResult": {
15242           "type": "object",
15243           "properties": {
15244             "Constraints": {
15245               "$ref": "#/definitions/Value"
15246             },
15247             "Error": {
15248               "$ref": "#/definitions/Error"
15249             }
15250           },
15251           "additionalProperties": false,
15252           "required": [
15253             "Error",
15254             "Constraints"
15255           ]
15256         },
15257         "ConstraintsResults": {
15258           "type": "object",
15259           "properties": {
15260             "Results": {
15261               "type": "array",
15262               "items": {
15263                 "$ref": "#/definitions/ConstraintsResult"
15264               }
15265             }
15266           },
15267           "additionalProperties": false,
15268           "required": [
15269             "Results"
15270           ]
15271         },
15272         "ContainerConfig": {
15273           "type": "object",
15274           "properties": {
15275             "AllowLXCLoopMounts": {
15276               "type": "boolean"
15277             },
15278             "AptMirror": {
15279               "type": "string"
15280             },
15281             "AptProxy": {
15282               "$ref": "#/definitions/Settings"
15283             },
15284             "AuthorizedKeys": {
15285               "type": "string"
15286             },
15287             "ProviderType": {
15288               "type": "string"
15289             },
15290             "Proxy": {
15291               "$ref": "#/definitions/Settings"
15292             },
15293             "SSLHostnameVerification": {
15294               "type": "boolean"
15295             },
15296             "UpdateBehavior": {
15297               "$ref": "#/definitions/UpdateBehavior"
15298             }
15299           },
15300           "additionalProperties": false,
15301           "required": [
15302             "ProviderType",
15303             "AuthorizedKeys",
15304             "SSLHostnameVerification",
15305             "Proxy",
15306             "AptProxy",
15307             "AptMirror",
15308             "AllowLXCLoopMounts",
15309             "UpdateBehavior"
15310           ]
15311         },
15312         "ContainerManagerConfig": {
15313           "type": "object",
15314           "properties": {
15315             "ManagerConfig": {
15316               "type": "object",
15317               "patternProperties": {
15318                 ".*": {
15319                   "type": "string"
15320                 }
15321               }
15322             }
15323           },
15324           "additionalProperties": false,
15325           "required": [
15326             "ManagerConfig"
15327           ]
15328         },
15329         "ContainerManagerConfigParams": {
15330           "type": "object",
15331           "properties": {
15332             "Type": {
15333               "type": "string"
15334             }
15335           },
15336           "additionalProperties": false,
15337           "required": [
15338             "Type"
15339           ]
15340         },
15341         "DistributionGroupResult": {
15342           "type": "object",
15343           "properties": {
15344             "Error": {
15345               "$ref": "#/definitions/Error"
15346             },
15347             "Result": {
15348               "type": "array",
15349               "items": {
15350                 "type": "string"
15351               }
15352             }
15353           },
15354           "additionalProperties": false,
15355           "required": [
15356             "Error",
15357             "Result"
15358           ]
15359         },
15360         "DistributionGroupResults": {
15361           "type": "object",
15362           "properties": {
15363             "Results": {
15364               "type": "array",
15365               "items": {
15366                 "$ref": "#/definitions/DistributionGroupResult"
15367               }
15368             }
15369           },
15370           "additionalProperties": false,
15371           "required": [
15372             "Results"
15373           ]
15374         },
15375         "Entities": {
15376           "type": "object",
15377           "properties": {
15378             "Entities": {
15379               "type": "array",
15380               "items": {
15381                 "$ref": "#/definitions/Entity"
15382               }
15383             }
15384           },
15385           "additionalProperties": false,
15386           "required": [
15387             "Entities"
15388           ]
15389         },
15390         "Entity": {
15391           "type": "object",
15392           "properties": {
15393             "Tag": {
15394               "type": "string"
15395             }
15396           },
15397           "additionalProperties": false,
15398           "required": [
15399             "Tag"
15400           ]
15401         },
15402         "EntityPassword": {
15403           "type": "object",
15404           "properties": {
15405             "Password": {
15406               "type": "string"
15407             },
15408             "Tag": {
15409               "type": "string"
15410             }
15411           },
15412           "additionalProperties": false,
15413           "required": [
15414             "Tag",
15415             "Password"
15416           ]
15417         },
15418         "EntityPasswords": {
15419           "type": "object",
15420           "properties": {
15421             "Changes": {
15422               "type": "array",
15423               "items": {
15424                 "$ref": "#/definitions/EntityPassword"
15425               }
15426             }
15427           },
15428           "additionalProperties": false,
15429           "required": [
15430             "Changes"
15431           ]
15432         },
15433         "EntityStatusArgs": {
15434           "type": "object",
15435           "properties": {
15436             "Data": {
15437               "type": "object",
15438               "patternProperties": {
15439                 ".*": {
15440                   "type": "object",
15441                   "additionalProperties": true
15442                 }
15443               }
15444             },
15445             "Info": {
15446               "type": "string"
15447             },
15448             "Status": {
15449               "type": "string"
15450             },
15451             "Tag": {
15452               "type": "string"
15453             }
15454           },
15455           "additionalProperties": false,
15456           "required": [
15457             "Tag",
15458             "Status",
15459             "Info",
15460             "Data"
15461           ]
15462         },
15463         "Error": {
15464           "type": "object",
15465           "properties": {
15466             "Code": {
15467               "type": "string"
15468             },
15469             "Info": {
15470               "$ref": "#/definitions/ErrorInfo"
15471             },
15472             "Message": {
15473               "type": "string"
15474             }
15475           },
15476           "additionalProperties": false,
15477           "required": [
15478             "Message",
15479             "Code"
15480           ]
15481         },
15482         "ErrorInfo": {
15483           "type": "object",
15484           "properties": {
15485             "Macaroon": {
15486               "$ref": "#/definitions/Macaroon"
15487             },
15488             "MacaroonPath": {
15489               "type": "string"
15490             }
15491           },
15492           "additionalProperties": false
15493         },
15494         "ErrorResult": {
15495           "type": "object",
15496           "properties": {
15497             "Error": {
15498               "$ref": "#/definitions/Error"
15499             }
15500           },
15501           "additionalProperties": false,
15502           "required": [
15503             "Error"
15504           ]
15505         },
15506         "ErrorResults": {
15507           "type": "object",
15508           "properties": {
15509             "Results": {
15510               "type": "array",
15511               "items": {
15512                 "$ref": "#/definitions/ErrorResult"
15513               }
15514             }
15515           },
15516           "additionalProperties": false,
15517           "required": [
15518             "Results"
15519           ]
15520         },
15521         "FindToolsParams": {
15522           "type": "object",
15523           "properties": {
15524             "Arch": {
15525               "type": "string"
15526             },
15527             "MajorVersion": {
15528               "type": "integer"
15529             },
15530             "MinorVersion": {
15531               "type": "integer"
15532             },
15533             "Number": {
15534               "$ref": "#/definitions/Number"
15535             },
15536             "Series": {
15537               "type": "string"
15538             }
15539           },
15540           "additionalProperties": false,
15541           "required": [
15542             "Number",
15543             "MajorVersion",
15544             "MinorVersion",
15545             "Arch",
15546             "Series"
15547           ]
15548         },
15549         "FindToolsResult": {
15550           "type": "object",
15551           "properties": {
15552             "Error": {
15553               "$ref": "#/definitions/Error"
15554             },
15555             "List": {
15556               "type": "array",
15557               "items": {
15558                 "$ref": "#/definitions/Tools"
15559               }
15560             }
15561           },
15562           "additionalProperties": false,
15563           "required": [
15564             "List",
15565             "Error"
15566           ]
15567         },
15568         "HardwareCharacteristics": {
15569           "type": "object",
15570           "properties": {
15571             "Arch": {
15572               "type": "string"
15573             },
15574             "AvailabilityZone": {
15575               "type": "string"
15576             },
15577             "CpuCores": {
15578               "type": "integer"
15579             },
15580             "CpuPower": {
15581               "type": "integer"
15582             },
15583             "Mem": {
15584               "type": "integer"
15585             },
15586             "RootDisk": {
15587               "type": "integer"
15588             },
15589             "Tags": {
15590               "type": "array",
15591               "items": {
15592                 "type": "string"
15593               }
15594             }
15595           },
15596           "additionalProperties": false
15597         },
15598         "HostPort": {
15599           "type": "object",
15600           "properties": {
15601             "Address": {
15602               "$ref": "#/definitions/Address"
15603             },
15604             "Port": {
15605               "type": "integer"
15606             }
15607           },
15608           "additionalProperties": false,
15609           "required": [
15610             "Address",
15611             "Port"
15612           ]
15613         },
15614         "InstanceInfo": {
15615           "type": "object",
15616           "properties": {
15617             "Characteristics": {
15618               "$ref": "#/definitions/HardwareCharacteristics"
15619             },
15620             "InstanceId": {
15621               "type": "string"
15622             },
15623             "NetworkConfig": {
15624               "type": "array",
15625               "items": {
15626                 "$ref": "#/definitions/NetworkConfig"
15627               }
15628             },
15629             "Nonce": {
15630               "type": "string"
15631             },
15632             "Tag": {
15633               "type": "string"
15634             },
15635             "VolumeAttachments": {
15636               "type": "object",
15637               "patternProperties": {
15638                 ".*": {
15639                   "$ref": "#/definitions/VolumeAttachmentInfo"
15640                 }
15641               }
15642             },
15643             "Volumes": {
15644               "type": "array",
15645               "items": {
15646                 "$ref": "#/definitions/Volume"
15647               }
15648             }
15649           },
15650           "additionalProperties": false,
15651           "required": [
15652             "Tag",
15653             "InstanceId",
15654             "Nonce",
15655             "Characteristics",
15656             "Volumes",
15657             "VolumeAttachments",
15658             "NetworkConfig"
15659           ]
15660         },
15661         "InstancesInfo": {
15662           "type": "object",
15663           "properties": {
15664             "Machines": {
15665               "type": "array",
15666               "items": {
15667                 "$ref": "#/definitions/InstanceInfo"
15668               }
15669             }
15670           },
15671           "additionalProperties": false,
15672           "required": [
15673             "Machines"
15674           ]
15675         },
15676         "LifeResult": {
15677           "type": "object",
15678           "properties": {
15679             "Error": {
15680               "$ref": "#/definitions/Error"
15681             },
15682             "Life": {
15683               "type": "string"
15684             }
15685           },
15686           "additionalProperties": false,
15687           "required": [
15688             "Life",
15689             "Error"
15690           ]
15691         },
15692         "LifeResults": {
15693           "type": "object",
15694           "properties": {
15695             "Results": {
15696               "type": "array",
15697               "items": {
15698                 "$ref": "#/definitions/LifeResult"
15699               }
15700             }
15701           },
15702           "additionalProperties": false,
15703           "required": [
15704             "Results"
15705           ]
15706         },
15707         "Macaroon": {
15708           "type": "object",
15709           "properties": {
15710             "caveats": {
15711               "type": "array",
15712               "items": {
15713                 "$ref": "#/definitions/caveat"
15714               }
15715             },
15716             "data": {
15717               "type": "array",
15718               "items": {
15719                 "type": "integer"
15720               }
15721             },
15722             "id": {
15723               "$ref": "#/definitions/packet"
15724             },
15725             "location": {
15726               "$ref": "#/definitions/packet"
15727             },
15728             "sig": {
15729               "type": "array",
15730               "items": {
15731                 "type": "integer"
15732               }
15733             }
15734           },
15735           "additionalProperties": false,
15736           "required": [
15737             "data",
15738             "location",
15739             "id",
15740             "caveats",
15741             "sig"
15742           ]
15743         },
15744         "MachineContainers": {
15745           "type": "object",
15746           "properties": {
15747             "ContainerTypes": {
15748               "type": "array",
15749               "items": {
15750                 "type": "string"
15751               }
15752             },
15753             "MachineTag": {
15754               "type": "string"
15755             }
15756           },
15757           "additionalProperties": false,
15758           "required": [
15759             "MachineTag",
15760             "ContainerTypes"
15761           ]
15762         },
15763         "MachineContainersParams": {
15764           "type": "object",
15765           "properties": {
15766             "Params": {
15767               "type": "array",
15768               "items": {
15769                 "$ref": "#/definitions/MachineContainers"
15770               }
15771             }
15772           },
15773           "additionalProperties": false,
15774           "required": [
15775             "Params"
15776           ]
15777         },
15778         "MachineNetworkConfigResult": {
15779           "type": "object",
15780           "properties": {
15781             "Error": {
15782               "$ref": "#/definitions/Error"
15783             },
15784             "Info": {
15785               "type": "array",
15786               "items": {
15787                 "$ref": "#/definitions/NetworkConfig"
15788               }
15789             }
15790           },
15791           "additionalProperties": false,
15792           "required": [
15793             "Error",
15794             "Info"
15795           ]
15796         },
15797         "MachineNetworkConfigResults": {
15798           "type": "object",
15799           "properties": {
15800             "Results": {
15801               "type": "array",
15802               "items": {
15803                 "$ref": "#/definitions/MachineNetworkConfigResult"
15804               }
15805             }
15806           },
15807           "additionalProperties": false,
15808           "required": [
15809             "Results"
15810           ]
15811         },
15812         "ModelConfigResult": {
15813           "type": "object",
15814           "properties": {
15815             "Config": {
15816               "type": "object",
15817               "patternProperties": {
15818                 ".*": {
15819                   "type": "object",
15820                   "additionalProperties": true
15821                 }
15822               }
15823             }
15824           },
15825           "additionalProperties": false,
15826           "required": [
15827             "Config"
15828           ]
15829         },
15830         "NetworkConfig": {
15831           "type": "object",
15832           "properties": {
15833             "Address": {
15834               "type": "string"
15835             },
15836             "CIDR": {
15837               "type": "string"
15838             },
15839             "ConfigType": {
15840               "type": "string"
15841             },
15842             "DNSSearchDomains": {
15843               "type": "array",
15844               "items": {
15845                 "type": "string"
15846               }
15847             },
15848             "DNSServers": {
15849               "type": "array",
15850               "items": {
15851                 "type": "string"
15852               }
15853             },
15854             "DeviceIndex": {
15855               "type": "integer"
15856             },
15857             "Disabled": {
15858               "type": "boolean"
15859             },
15860             "GatewayAddress": {
15861               "type": "string"
15862             },
15863             "InterfaceName": {
15864               "type": "string"
15865             },
15866             "InterfaceType": {
15867               "type": "string"
15868             },
15869             "MACAddress": {
15870               "type": "string"
15871             },
15872             "MTU": {
15873               "type": "integer"
15874             },
15875             "NoAutoStart": {
15876               "type": "boolean"
15877             },
15878             "ParentInterfaceName": {
15879               "type": "string"
15880             },
15881             "ProviderAddressId": {
15882               "type": "string"
15883             },
15884             "ProviderId": {
15885               "type": "string"
15886             },
15887             "ProviderSpaceId": {
15888               "type": "string"
15889             },
15890             "ProviderSubnetId": {
15891               "type": "string"
15892             },
15893             "ProviderVLANId": {
15894               "type": "string"
15895             },
15896             "VLANTag": {
15897               "type": "integer"
15898             }
15899           },
15900           "additionalProperties": false,
15901           "required": [
15902             "DeviceIndex",
15903             "MACAddress",
15904             "CIDR",
15905             "MTU",
15906             "ProviderId",
15907             "ProviderSubnetId",
15908             "ProviderSpaceId",
15909             "ProviderAddressId",
15910             "ProviderVLANId",
15911             "VLANTag",
15912             "InterfaceName",
15913             "ParentInterfaceName",
15914             "InterfaceType",
15915             "Disabled"
15916           ]
15917         },
15918         "NotifyWatchResult": {
15919           "type": "object",
15920           "properties": {
15921             "Error": {
15922               "$ref": "#/definitions/Error"
15923             },
15924             "NotifyWatcherId": {
15925               "type": "string"
15926             }
15927           },
15928           "additionalProperties": false,
15929           "required": [
15930             "NotifyWatcherId",
15931             "Error"
15932           ]
15933         },
15934         "Number": {
15935           "type": "object",
15936           "properties": {
15937             "Build": {
15938               "type": "integer"
15939             },
15940             "Major": {
15941               "type": "integer"
15942             },
15943             "Minor": {
15944               "type": "integer"
15945             },
15946             "Patch": {
15947               "type": "integer"
15948             },
15949             "Tag": {
15950               "type": "string"
15951             }
15952           },
15953           "additionalProperties": false,
15954           "required": [
15955             "Major",
15956             "Minor",
15957             "Tag",
15958             "Patch",
15959             "Build"
15960           ]
15961         },
15962         "ProvisioningInfo": {
15963           "type": "object",
15964           "properties": {
15965             "Constraints": {
15966               "$ref": "#/definitions/Value"
15967             },
15968             "EndpointBindings": {
15969               "type": "object",
15970               "patternProperties": {
15971                 ".*": {
15972                   "type": "string"
15973                 }
15974               }
15975             },
15976             "ImageMetadata": {
15977               "type": "array",
15978               "items": {
15979                 "$ref": "#/definitions/CloudImageMetadata"
15980               }
15981             },
15982             "Jobs": {
15983               "type": "array",
15984               "items": {
15985                 "type": "string"
15986               }
15987             },
15988             "Placement": {
15989               "type": "string"
15990             },
15991             "Series": {
15992               "type": "string"
15993             },
15994             "SubnetsToZones": {
15995               "type": "object",
15996               "patternProperties": {
15997                 ".*": {
15998                   "type": "array",
15999                   "items": {
16000                     "type": "string"
16001                   }
16002                 }
16003               }
16004             },
16005             "Tags": {
16006               "type": "object",
16007               "patternProperties": {
16008                 ".*": {
16009                   "type": "string"
16010                 }
16011               }
16012             },
16013             "Volumes": {
16014               "type": "array",
16015               "items": {
16016                 "$ref": "#/definitions/VolumeParams"
16017               }
16018             }
16019           },
16020           "additionalProperties": false,
16021           "required": [
16022             "Constraints",
16023             "Series",
16024             "Placement",
16025             "Jobs",
16026             "Volumes",
16027             "Tags",
16028             "SubnetsToZones",
16029             "ImageMetadata",
16030             "EndpointBindings"
16031           ]
16032         },
16033         "ProvisioningInfoResult": {
16034           "type": "object",
16035           "properties": {
16036             "Error": {
16037               "$ref": "#/definitions/Error"
16038             },
16039             "Result": {
16040               "$ref": "#/definitions/ProvisioningInfo"
16041             }
16042           },
16043           "additionalProperties": false,
16044           "required": [
16045             "Error",
16046             "Result"
16047           ]
16048         },
16049         "ProvisioningInfoResults": {
16050           "type": "object",
16051           "properties": {
16052             "Results": {
16053               "type": "array",
16054               "items": {
16055                 "$ref": "#/definitions/ProvisioningInfoResult"
16056               }
16057             }
16058           },
16059           "additionalProperties": false,
16060           "required": [
16061             "Results"
16062           ]
16063         },
16064         "SetStatus": {
16065           "type": "object",
16066           "properties": {
16067             "Entities": {
16068               "type": "array",
16069               "items": {
16070                 "$ref": "#/definitions/EntityStatusArgs"
16071               }
16072             }
16073           },
16074           "additionalProperties": false,
16075           "required": [
16076             "Entities"
16077           ]
16078         },
16079         "Settings": {
16080           "type": "object",
16081           "properties": {
16082             "Ftp": {
16083               "type": "string"
16084             },
16085             "Http": {
16086               "type": "string"
16087             },
16088             "Https": {
16089               "type": "string"
16090             },
16091             "NoProxy": {
16092               "type": "string"
16093             }
16094           },
16095           "additionalProperties": false,
16096           "required": [
16097             "Http",
16098             "Https",
16099             "Ftp",
16100             "NoProxy"
16101           ]
16102         },
16103         "StatusResult": {
16104           "type": "object",
16105           "properties": {
16106             "Data": {
16107               "type": "object",
16108               "patternProperties": {
16109                 ".*": {
16110                   "type": "object",
16111                   "additionalProperties": true
16112                 }
16113               }
16114             },
16115             "Error": {
16116               "$ref": "#/definitions/Error"
16117             },
16118             "Id": {
16119               "type": "string"
16120             },
16121             "Info": {
16122               "type": "string"
16123             },
16124             "Life": {
16125               "type": "string"
16126             },
16127             "Since": {
16128               "type": "string",
16129               "format": "date-time"
16130             },
16131             "Status": {
16132               "type": "string"
16133             }
16134           },
16135           "additionalProperties": false,
16136           "required": [
16137             "Error",
16138             "Id",
16139             "Life",
16140             "Status",
16141             "Info",
16142             "Data",
16143             "Since"
16144           ]
16145         },
16146         "StatusResults": {
16147           "type": "object",
16148           "properties": {
16149             "Results": {
16150               "type": "array",
16151               "items": {
16152                 "$ref": "#/definitions/StatusResult"
16153               }
16154             }
16155           },
16156           "additionalProperties": false,
16157           "required": [
16158             "Results"
16159           ]
16160         },
16161         "StringResult": {
16162           "type": "object",
16163           "properties": {
16164             "Error": {
16165               "$ref": "#/definitions/Error"
16166             },
16167             "Result": {
16168               "type": "string"
16169             }
16170           },
16171           "additionalProperties": false,
16172           "required": [
16173             "Error",
16174             "Result"
16175           ]
16176         },
16177         "StringResults": {
16178           "type": "object",
16179           "properties": {
16180             "Results": {
16181               "type": "array",
16182               "items": {
16183                 "$ref": "#/definitions/StringResult"
16184               }
16185             }
16186           },
16187           "additionalProperties": false,
16188           "required": [
16189             "Results"
16190           ]
16191         },
16192         "StringsResult": {
16193           "type": "object",
16194           "properties": {
16195             "Error": {
16196               "$ref": "#/definitions/Error"
16197             },
16198             "Result": {
16199               "type": "array",
16200               "items": {
16201                 "type": "string"
16202               }
16203             }
16204           },
16205           "additionalProperties": false,
16206           "required": [
16207             "Error",
16208             "Result"
16209           ]
16210         },
16211         "StringsWatchResult": {
16212           "type": "object",
16213           "properties": {
16214             "Changes": {
16215               "type": "array",
16216               "items": {
16217                 "type": "string"
16218               }
16219             },
16220             "Error": {
16221               "$ref": "#/definitions/Error"
16222             },
16223             "StringsWatcherId": {
16224               "type": "string"
16225             }
16226           },
16227           "additionalProperties": false,
16228           "required": [
16229             "StringsWatcherId",
16230             "Changes",
16231             "Error"
16232           ]
16233         },
16234         "StringsWatchResults": {
16235           "type": "object",
16236           "properties": {
16237             "Results": {
16238               "type": "array",
16239               "items": {
16240                 "$ref": "#/definitions/StringsWatchResult"
16241               }
16242             }
16243           },
16244           "additionalProperties": false,
16245           "required": [
16246             "Results"
16247           ]
16248         },
16249         "Tools": {
16250           "type": "object",
16251           "properties": {
16252             "sha256": {
16253               "type": "string"
16254             },
16255             "size": {
16256               "type": "integer"
16257             },
16258             "url": {
16259               "type": "string"
16260             },
16261             "version": {
16262               "$ref": "#/definitions/Binary"
16263             }
16264           },
16265           "additionalProperties": false,
16266           "required": [
16267             "version",
16268             "url",
16269             "size"
16270           ]
16271         },
16272         "ToolsResult": {
16273           "type": "object",
16274           "properties": {
16275             "DisableSSLHostnameVerification": {
16276               "type": "boolean"
16277             },
16278             "Error": {
16279               "$ref": "#/definitions/Error"
16280             },
16281             "ToolsList": {
16282               "type": "array",
16283               "items": {
16284                 "$ref": "#/definitions/Tools"
16285               }
16286             }
16287           },
16288           "additionalProperties": false,
16289           "required": [
16290             "ToolsList",
16291             "DisableSSLHostnameVerification",
16292             "Error"
16293           ]
16294         },
16295         "ToolsResults": {
16296           "type": "object",
16297           "properties": {
16298             "Results": {
16299               "type": "array",
16300               "items": {
16301                 "$ref": "#/definitions/ToolsResult"
16302               }
16303             }
16304           },
16305           "additionalProperties": false,
16306           "required": [
16307             "Results"
16308           ]
16309         },
16310         "UpdateBehavior": {
16311           "type": "object",
16312           "properties": {
16313             "EnableOSRefreshUpdate": {
16314               "type": "boolean"
16315             },
16316             "EnableOSUpgrade": {
16317               "type": "boolean"
16318             }
16319           },
16320           "additionalProperties": false,
16321           "required": [
16322             "EnableOSRefreshUpdate",
16323             "EnableOSUpgrade"
16324           ]
16325         },
16326         "Value": {
16327           "type": "object",
16328           "properties": {
16329             "arch": {
16330               "type": "string"
16331             },
16332             "container": {
16333               "type": "string"
16334             },
16335             "cpu-cores": {
16336               "type": "integer"
16337             },
16338             "cpu-power": {
16339               "type": "integer"
16340             },
16341             "instance-type": {
16342               "type": "string"
16343             },
16344             "mem": {
16345               "type": "integer"
16346             },
16347             "root-disk": {
16348               "type": "integer"
16349             },
16350             "spaces": {
16351               "type": "array",
16352               "items": {
16353                 "type": "string"
16354               }
16355             },
16356             "tags": {
16357               "type": "array",
16358               "items": {
16359                 "type": "string"
16360               }
16361             },
16362             "virt-type": {
16363               "type": "string"
16364             }
16365           },
16366           "additionalProperties": false
16367         },
16368         "Volume": {
16369           "type": "object",
16370           "properties": {
16371             "info": {
16372               "$ref": "#/definitions/VolumeInfo"
16373             },
16374             "volumetag": {
16375               "type": "string"
16376             }
16377           },
16378           "additionalProperties": false,
16379           "required": [
16380             "volumetag",
16381             "info"
16382           ]
16383         },
16384         "VolumeAttachmentInfo": {
16385           "type": "object",
16386           "properties": {
16387             "busaddress": {
16388               "type": "string"
16389             },
16390             "devicelink": {
16391               "type": "string"
16392             },
16393             "devicename": {
16394               "type": "string"
16395             },
16396             "read-only": {
16397               "type": "boolean"
16398             }
16399           },
16400           "additionalProperties": false
16401         },
16402         "VolumeAttachmentParams": {
16403           "type": "object",
16404           "properties": {
16405             "instanceid": {
16406               "type": "string"
16407             },
16408             "machinetag": {
16409               "type": "string"
16410             },
16411             "provider": {
16412               "type": "string"
16413             },
16414             "read-only": {
16415               "type": "boolean"
16416             },
16417             "volumeid": {
16418               "type": "string"
16419             },
16420             "volumetag": {
16421               "type": "string"
16422             }
16423           },
16424           "additionalProperties": false,
16425           "required": [
16426             "volumetag",
16427             "machinetag",
16428             "provider"
16429           ]
16430         },
16431         "VolumeInfo": {
16432           "type": "object",
16433           "properties": {
16434             "hardwareid": {
16435               "type": "string"
16436             },
16437             "persistent": {
16438               "type": "boolean"
16439             },
16440             "size": {
16441               "type": "integer"
16442             },
16443             "volumeid": {
16444               "type": "string"
16445             }
16446           },
16447           "additionalProperties": false,
16448           "required": [
16449             "volumeid",
16450             "size",
16451             "persistent"
16452           ]
16453         },
16454         "VolumeParams": {
16455           "type": "object",
16456           "properties": {
16457             "attachment": {
16458               "$ref": "#/definitions/VolumeAttachmentParams"
16459             },
16460             "attributes": {
16461               "type": "object",
16462               "patternProperties": {
16463                 ".*": {
16464                   "type": "object",
16465                   "additionalProperties": true
16466                 }
16467               }
16468             },
16469             "provider": {
16470               "type": "string"
16471             },
16472             "size": {
16473               "type": "integer"
16474             },
16475             "tags": {
16476               "type": "object",
16477               "patternProperties": {
16478                 ".*": {
16479                   "type": "string"
16480                 }
16481               }
16482             },
16483             "volumetag": {
16484               "type": "string"
16485             }
16486           },
16487           "additionalProperties": false,
16488           "required": [
16489             "volumetag",
16490             "size",
16491             "provider"
16492           ]
16493         },
16494         "WatchContainer": {
16495           "type": "object",
16496           "properties": {
16497             "ContainerType": {
16498               "type": "string"
16499             },
16500             "MachineTag": {
16501               "type": "string"
16502             }
16503           },
16504           "additionalProperties": false,
16505           "required": [
16506             "MachineTag",
16507             "ContainerType"
16508           ]
16509         },
16510         "WatchContainers": {
16511           "type": "object",
16512           "properties": {
16513             "Params": {
16514               "type": "array",
16515               "items": {
16516                 "$ref": "#/definitions/WatchContainer"
16517               }
16518             }
16519           },
16520           "additionalProperties": false,
16521           "required": [
16522             "Params"
16523           ]
16524         },
16525         "caveat": {
16526           "type": "object",
16527           "properties": {
16528             "caveatId": {
16529               "$ref": "#/definitions/packet"
16530             },
16531             "location": {
16532               "$ref": "#/definitions/packet"
16533             },
16534             "verificationId": {
16535               "$ref": "#/definitions/packet"
16536             }
16537           },
16538           "additionalProperties": false,
16539           "required": [
16540             "location",
16541             "caveatId",
16542             "verificationId"
16543           ]
16544         },
16545         "packet": {
16546           "type": "object",
16547           "properties": {
16548             "headerLen": {
16549               "type": "integer"
16550             },
16551             "start": {
16552               "type": "integer"
16553             },
16554             "totalLen": {
16555               "type": "integer"
16556             }
16557           },
16558           "additionalProperties": false,
16559           "required": [
16560             "start",
16561             "totalLen",
16562             "headerLen"
16563           ]
16564         }
16565       }
16566     }
16567   },
16568   {
16569     "Name": "ProxyUpdater",
16570     "Version": 1,
16571     "Schema": {
16572       "type": "object",
16573       "properties": {
16574         "ProxyConfig": {
16575           "type": "object",
16576           "properties": {
16577             "Params": {
16578               "$ref": "#/definitions/Entities"
16579             },
16580             "Result": {
16581               "$ref": "#/definitions/ProxyConfigResults"
16582             }
16583           }
16584         },
16585         "WatchForProxyConfigAndAPIHostPortChanges": {
16586           "type": "object",
16587           "properties": {
16588             "Params": {
16589               "$ref": "#/definitions/Entities"
16590             },
16591             "Result": {
16592               "$ref": "#/definitions/NotifyWatchResults"
16593             }
16594           }
16595         }
16596       },
16597       "definitions": {
16598         "Entities": {
16599           "type": "object",
16600           "properties": {
16601             "Entities": {
16602               "type": "array",
16603               "items": {
16604                 "$ref": "#/definitions/Entity"
16605               }
16606             }
16607           },
16608           "additionalProperties": false,
16609           "required": [
16610             "Entities"
16611           ]
16612         },
16613         "Entity": {
16614           "type": "object",
16615           "properties": {
16616             "Tag": {
16617               "type": "string"
16618             }
16619           },
16620           "additionalProperties": false,
16621           "required": [
16622             "Tag"
16623           ]
16624         },
16625         "Error": {
16626           "type": "object",
16627           "properties": {
16628             "Code": {
16629               "type": "string"
16630             },
16631             "Info": {
16632               "$ref": "#/definitions/ErrorInfo"
16633             },
16634             "Message": {
16635               "type": "string"
16636             }
16637           },
16638           "additionalProperties": false,
16639           "required": [
16640             "Message",
16641             "Code"
16642           ]
16643         },
16644         "ErrorInfo": {
16645           "type": "object",
16646           "properties": {
16647             "Macaroon": {
16648               "$ref": "#/definitions/Macaroon"
16649             },
16650             "MacaroonPath": {
16651               "type": "string"
16652             }
16653           },
16654           "additionalProperties": false
16655         },
16656         "Macaroon": {
16657           "type": "object",
16658           "properties": {
16659             "caveats": {
16660               "type": "array",
16661               "items": {
16662                 "$ref": "#/definitions/caveat"
16663               }
16664             },
16665             "data": {
16666               "type": "array",
16667               "items": {
16668                 "type": "integer"
16669               }
16670             },
16671             "id": {
16672               "$ref": "#/definitions/packet"
16673             },
16674             "location": {
16675               "$ref": "#/definitions/packet"
16676             },
16677             "sig": {
16678               "type": "array",
16679               "items": {
16680                 "type": "integer"
16681               }
16682             }
16683           },
16684           "additionalProperties": false,
16685           "required": [
16686             "data",
16687             "location",
16688             "id",
16689             "caveats",
16690             "sig"
16691           ]
16692         },
16693         "NotifyWatchResult": {
16694           "type": "object",
16695           "properties": {
16696             "Error": {
16697               "$ref": "#/definitions/Error"
16698             },
16699             "NotifyWatcherId": {
16700               "type": "string"
16701             }
16702           },
16703           "additionalProperties": false,
16704           "required": [
16705             "NotifyWatcherId",
16706             "Error"
16707           ]
16708         },
16709         "NotifyWatchResults": {
16710           "type": "object",
16711           "properties": {
16712             "Results": {
16713               "type": "array",
16714               "items": {
16715                 "$ref": "#/definitions/NotifyWatchResult"
16716               }
16717             }
16718           },
16719           "additionalProperties": false,
16720           "required": [
16721             "Results"
16722           ]
16723         },
16724         "ProxyConfig": {
16725           "type": "object",
16726           "properties": {
16727             "FTP": {
16728               "type": "string"
16729             },
16730             "HTTP": {
16731               "type": "string"
16732             },
16733             "HTTPS": {
16734               "type": "string"
16735             },
16736             "NoProxy": {
16737               "type": "string"
16738             }
16739           },
16740           "additionalProperties": false,
16741           "required": [
16742             "HTTP",
16743             "HTTPS",
16744             "FTP",
16745             "NoProxy"
16746           ]
16747         },
16748         "ProxyConfigResult": {
16749           "type": "object",
16750           "properties": {
16751             "APTProxySettings": {
16752               "$ref": "#/definitions/ProxyConfig"
16753             },
16754             "Error": {
16755               "$ref": "#/definitions/Error"
16756             },
16757             "ProxySettings": {
16758               "$ref": "#/definitions/ProxyConfig"
16759             }
16760           },
16761           "additionalProperties": false,
16762           "required": [
16763             "ProxySettings",
16764             "APTProxySettings"
16765           ]
16766         },
16767         "ProxyConfigResults": {
16768           "type": "object",
16769           "properties": {
16770             "Results": {
16771               "type": "array",
16772               "items": {
16773                 "$ref": "#/definitions/ProxyConfigResult"
16774               }
16775             }
16776           },
16777           "additionalProperties": false,
16778           "required": [
16779             "Results"
16780           ]
16781         },
16782         "caveat": {
16783           "type": "object",
16784           "properties": {
16785             "caveatId": {
16786               "$ref": "#/definitions/packet"
16787             },
16788             "location": {
16789               "$ref": "#/definitions/packet"
16790             },
16791             "verificationId": {
16792               "$ref": "#/definitions/packet"
16793             }
16794           },
16795           "additionalProperties": false,
16796           "required": [
16797             "location",
16798             "caveatId",
16799             "verificationId"
16800           ]
16801         },
16802         "packet": {
16803           "type": "object",
16804           "properties": {
16805             "headerLen": {
16806               "type": "integer"
16807             },
16808             "start": {
16809               "type": "integer"
16810             },
16811             "totalLen": {
16812               "type": "integer"
16813             }
16814           },
16815           "additionalProperties": false,
16816           "required": [
16817             "start",
16818             "totalLen",
16819             "headerLen"
16820           ]
16821         }
16822       }
16823     }
16824   },
16825   {
16826     "Name": "Reboot",
16827     "Version": 2,
16828     "Schema": {
16829       "type": "object",
16830       "properties": {
16831         "ClearReboot": {
16832           "type": "object",
16833           "properties": {
16834             "Params": {
16835               "$ref": "#/definitions/Entities"
16836             },
16837             "Result": {
16838               "$ref": "#/definitions/ErrorResults"
16839             }
16840           }
16841         },
16842         "GetRebootAction": {
16843           "type": "object",
16844           "properties": {
16845             "Params": {
16846               "$ref": "#/definitions/Entities"
16847             },
16848             "Result": {
16849               "$ref": "#/definitions/RebootActionResults"
16850             }
16851           }
16852         },
16853         "RequestReboot": {
16854           "type": "object",
16855           "properties": {
16856             "Params": {
16857               "$ref": "#/definitions/Entities"
16858             },
16859             "Result": {
16860               "$ref": "#/definitions/ErrorResults"
16861             }
16862           }
16863         },
16864         "WatchForRebootEvent": {
16865           "type": "object",
16866           "properties": {
16867             "Result": {
16868               "$ref": "#/definitions/NotifyWatchResult"
16869             }
16870           }
16871         }
16872       },
16873       "definitions": {
16874         "Entities": {
16875           "type": "object",
16876           "properties": {
16877             "Entities": {
16878               "type": "array",
16879               "items": {
16880                 "$ref": "#/definitions/Entity"
16881               }
16882             }
16883           },
16884           "additionalProperties": false,
16885           "required": [
16886             "Entities"
16887           ]
16888         },
16889         "Entity": {
16890           "type": "object",
16891           "properties": {
16892             "Tag": {
16893               "type": "string"
16894             }
16895           },
16896           "additionalProperties": false,
16897           "required": [
16898             "Tag"
16899           ]
16900         },
16901         "Error": {
16902           "type": "object",
16903           "properties": {
16904             "Code": {
16905               "type": "string"
16906             },
16907             "Info": {
16908               "$ref": "#/definitions/ErrorInfo"
16909             },
16910             "Message": {
16911               "type": "string"
16912             }
16913           },
16914           "additionalProperties": false,
16915           "required": [
16916             "Message",
16917             "Code"
16918           ]
16919         },
16920         "ErrorInfo": {
16921           "type": "object",
16922           "properties": {
16923             "Macaroon": {
16924               "$ref": "#/definitions/Macaroon"
16925             },
16926             "MacaroonPath": {
16927               "type": "string"
16928             }
16929           },
16930           "additionalProperties": false
16931         },
16932         "ErrorResult": {
16933           "type": "object",
16934           "properties": {
16935             "Error": {
16936               "$ref": "#/definitions/Error"
16937             }
16938           },
16939           "additionalProperties": false,
16940           "required": [
16941             "Error"
16942           ]
16943         },
16944         "ErrorResults": {
16945           "type": "object",
16946           "properties": {
16947             "Results": {
16948               "type": "array",
16949               "items": {
16950                 "$ref": "#/definitions/ErrorResult"
16951               }
16952             }
16953           },
16954           "additionalProperties": false,
16955           "required": [
16956             "Results"
16957           ]
16958         },
16959         "Macaroon": {
16960           "type": "object",
16961           "properties": {
16962             "caveats": {
16963               "type": "array",
16964               "items": {
16965                 "$ref": "#/definitions/caveat"
16966               }
16967             },
16968             "data": {
16969               "type": "array",
16970               "items": {
16971                 "type": "integer"
16972               }
16973             },
16974             "id": {
16975               "$ref": "#/definitions/packet"
16976             },
16977             "location": {
16978               "$ref": "#/definitions/packet"
16979             },
16980             "sig": {
16981               "type": "array",
16982               "items": {
16983                 "type": "integer"
16984               }
16985             }
16986           },
16987           "additionalProperties": false,
16988           "required": [
16989             "data",
16990             "location",
16991             "id",
16992             "caveats",
16993             "sig"
16994           ]
16995         },
16996         "NotifyWatchResult": {
16997           "type": "object",
16998           "properties": {
16999             "Error": {
17000               "$ref": "#/definitions/Error"
17001             },
17002             "NotifyWatcherId": {
17003               "type": "string"
17004             }
17005           },
17006           "additionalProperties": false,
17007           "required": [
17008             "NotifyWatcherId",
17009             "Error"
17010           ]
17011         },
17012         "RebootActionResult": {
17013           "type": "object",
17014           "properties": {
17015             "error": {
17016               "$ref": "#/definitions/Error"
17017             },
17018             "result": {
17019               "type": "string"
17020             }
17021           },
17022           "additionalProperties": false
17023         },
17024         "RebootActionResults": {
17025           "type": "object",
17026           "properties": {
17027             "results": {
17028               "type": "array",
17029               "items": {
17030                 "$ref": "#/definitions/RebootActionResult"
17031               }
17032             }
17033           },
17034           "additionalProperties": false
17035         },
17036         "caveat": {
17037           "type": "object",
17038           "properties": {
17039             "caveatId": {
17040               "$ref": "#/definitions/packet"
17041             },
17042             "location": {
17043               "$ref": "#/definitions/packet"
17044             },
17045             "verificationId": {
17046               "$ref": "#/definitions/packet"
17047             }
17048           },
17049           "additionalProperties": false,
17050           "required": [
17051             "location",
17052             "caveatId",
17053             "verificationId"
17054           ]
17055         },
17056         "packet": {
17057           "type": "object",
17058           "properties": {
17059             "headerLen": {
17060               "type": "integer"
17061             },
17062             "start": {
17063               "type": "integer"
17064             },
17065             "totalLen": {
17066               "type": "integer"
17067             }
17068           },
17069           "additionalProperties": false,
17070           "required": [
17071             "start",
17072             "totalLen",
17073             "headerLen"
17074           ]
17075         }
17076       }
17077     }
17078   },
17079   {
17080     "Name": "RelationUnitsWatcher",
17081     "Version": 1,
17082     "Schema": {
17083       "type": "object",
17084       "properties": {
17085         "Next": {
17086           "type": "object",
17087           "properties": {
17088             "Result": {
17089               "$ref": "#/definitions/RelationUnitsWatchResult"
17090             }
17091           }
17092         },
17093         "Stop": {
17094           "type": "object"
17095         }
17096       },
17097       "definitions": {
17098         "Error": {
17099           "type": "object",
17100           "properties": {
17101             "Code": {
17102               "type": "string"
17103             },
17104             "Info": {
17105               "$ref": "#/definitions/ErrorInfo"
17106             },
17107             "Message": {
17108               "type": "string"
17109             }
17110           },
17111           "additionalProperties": false,
17112           "required": [
17113             "Message",
17114             "Code"
17115           ]
17116         },
17117         "ErrorInfo": {
17118           "type": "object",
17119           "properties": {
17120             "Macaroon": {
17121               "$ref": "#/definitions/Macaroon"
17122             },
17123             "MacaroonPath": {
17124               "type": "string"
17125             }
17126           },
17127           "additionalProperties": false
17128         },
17129         "Macaroon": {
17130           "type": "object",
17131           "properties": {
17132             "caveats": {
17133               "type": "array",
17134               "items": {
17135                 "$ref": "#/definitions/caveat"
17136               }
17137             },
17138             "data": {
17139               "type": "array",
17140               "items": {
17141                 "type": "integer"
17142               }
17143             },
17144             "id": {
17145               "$ref": "#/definitions/packet"
17146             },
17147             "location": {
17148               "$ref": "#/definitions/packet"
17149             },
17150             "sig": {
17151               "type": "array",
17152               "items": {
17153                 "type": "integer"
17154               }
17155             }
17156           },
17157           "additionalProperties": false,
17158           "required": [
17159             "data",
17160             "location",
17161             "id",
17162             "caveats",
17163             "sig"
17164           ]
17165         },
17166         "RelationUnitsChange": {
17167           "type": "object",
17168           "properties": {
17169             "Changed": {
17170               "type": "object",
17171               "patternProperties": {
17172                 ".*": {
17173                   "$ref": "#/definitions/UnitSettings"
17174                 }
17175               }
17176             },
17177             "Departed": {
17178               "type": "array",
17179               "items": {
17180                 "type": "string"
17181               }
17182             }
17183           },
17184           "additionalProperties": false,
17185           "required": [
17186             "Changed",
17187             "Departed"
17188           ]
17189         },
17190         "RelationUnitsWatchResult": {
17191           "type": "object",
17192           "properties": {
17193             "Changes": {
17194               "$ref": "#/definitions/RelationUnitsChange"
17195             },
17196             "Error": {
17197               "$ref": "#/definitions/Error"
17198             },
17199             "RelationUnitsWatcherId": {
17200               "type": "string"
17201             }
17202           },
17203           "additionalProperties": false,
17204           "required": [
17205             "RelationUnitsWatcherId",
17206             "Changes",
17207             "Error"
17208           ]
17209         },
17210         "UnitSettings": {
17211           "type": "object",
17212           "properties": {
17213             "Version": {
17214               "type": "integer"
17215             }
17216           },
17217           "additionalProperties": false,
17218           "required": [
17219             "Version"
17220           ]
17221         },
17222         "caveat": {
17223           "type": "object",
17224           "properties": {
17225             "caveatId": {
17226               "$ref": "#/definitions/packet"
17227             },
17228             "location": {
17229               "$ref": "#/definitions/packet"
17230             },
17231             "verificationId": {
17232               "$ref": "#/definitions/packet"
17233             }
17234           },
17235           "additionalProperties": false,
17236           "required": [
17237             "location",
17238             "caveatId",
17239             "verificationId"
17240           ]
17241         },
17242         "packet": {
17243           "type": "object",
17244           "properties": {
17245             "headerLen": {
17246               "type": "integer"
17247             },
17248             "start": {
17249               "type": "integer"
17250             },
17251             "totalLen": {
17252               "type": "integer"
17253             }
17254           },
17255           "additionalProperties": false,
17256           "required": [
17257             "start",
17258             "totalLen",
17259             "headerLen"
17260           ]
17261         }
17262       }
17263     }
17264   },
17265   {
17266     "Name": "Resumer",
17267     "Version": 2,
17268     "Schema": {
17269       "type": "object",
17270       "properties": {
17271         "ResumeTransactions": {
17272           "type": "object"
17273         }
17274       }
17275     }
17276   },
17277   {
17278     "Name": "RetryStrategy",
17279     "Version": 1,
17280     "Schema": {
17281       "type": "object",
17282       "properties": {
17283         "RetryStrategy": {
17284           "type": "object",
17285           "properties": {
17286             "Params": {
17287               "$ref": "#/definitions/Entities"
17288             },
17289             "Result": {
17290               "$ref": "#/definitions/RetryStrategyResults"
17291             }
17292           }
17293         },
17294         "WatchRetryStrategy": {
17295           "type": "object",
17296           "properties": {
17297             "Params": {
17298               "$ref": "#/definitions/Entities"
17299             },
17300             "Result": {
17301               "$ref": "#/definitions/NotifyWatchResults"
17302             }
17303           }
17304         }
17305       },
17306       "definitions": {
17307         "Entities": {
17308           "type": "object",
17309           "properties": {
17310             "Entities": {
17311               "type": "array",
17312               "items": {
17313                 "$ref": "#/definitions/Entity"
17314               }
17315             }
17316           },
17317           "additionalProperties": false,
17318           "required": [
17319             "Entities"
17320           ]
17321         },
17322         "Entity": {
17323           "type": "object",
17324           "properties": {
17325             "Tag": {
17326               "type": "string"
17327             }
17328           },
17329           "additionalProperties": false,
17330           "required": [
17331             "Tag"
17332           ]
17333         },
17334         "Error": {
17335           "type": "object",
17336           "properties": {
17337             "Code": {
17338               "type": "string"
17339             },
17340             "Info": {
17341               "$ref": "#/definitions/ErrorInfo"
17342             },
17343             "Message": {
17344               "type": "string"
17345             }
17346           },
17347           "additionalProperties": false,
17348           "required": [
17349             "Message",
17350             "Code"
17351           ]
17352         },
17353         "ErrorInfo": {
17354           "type": "object",
17355           "properties": {
17356             "Macaroon": {
17357               "$ref": "#/definitions/Macaroon"
17358             },
17359             "MacaroonPath": {
17360               "type": "string"
17361             }
17362           },
17363           "additionalProperties": false
17364         },
17365         "Macaroon": {
17366           "type": "object",
17367           "properties": {
17368             "caveats": {
17369               "type": "array",
17370               "items": {
17371                 "$ref": "#/definitions/caveat"
17372               }
17373             },
17374             "data": {
17375               "type": "array",
17376               "items": {
17377                 "type": "integer"
17378               }
17379             },
17380             "id": {
17381               "$ref": "#/definitions/packet"
17382             },
17383             "location": {
17384               "$ref": "#/definitions/packet"
17385             },
17386             "sig": {
17387               "type": "array",
17388               "items": {
17389                 "type": "integer"
17390               }
17391             }
17392           },
17393           "additionalProperties": false,
17394           "required": [
17395             "data",
17396             "location",
17397             "id",
17398             "caveats",
17399             "sig"
17400           ]
17401         },
17402         "NotifyWatchResult": {
17403           "type": "object",
17404           "properties": {
17405             "Error": {
17406               "$ref": "#/definitions/Error"
17407             },
17408             "NotifyWatcherId": {
17409               "type": "string"
17410             }
17411           },
17412           "additionalProperties": false,
17413           "required": [
17414             "NotifyWatcherId",
17415             "Error"
17416           ]
17417         },
17418         "NotifyWatchResults": {
17419           "type": "object",
17420           "properties": {
17421             "Results": {
17422               "type": "array",
17423               "items": {
17424                 "$ref": "#/definitions/NotifyWatchResult"
17425               }
17426             }
17427           },
17428           "additionalProperties": false,
17429           "required": [
17430             "Results"
17431           ]
17432         },
17433         "RetryStrategy": {
17434           "type": "object",
17435           "properties": {
17436             "JitterRetryTime": {
17437               "type": "boolean"
17438             },
17439             "MaxRetryTime": {
17440               "type": "integer"
17441             },
17442             "MinRetryTime": {
17443               "type": "integer"
17444             },
17445             "RetryTimeFactor": {
17446               "type": "integer"
17447             },
17448             "ShouldRetry": {
17449               "type": "boolean"
17450             }
17451           },
17452           "additionalProperties": false,
17453           "required": [
17454             "ShouldRetry",
17455             "MinRetryTime",
17456             "MaxRetryTime",
17457             "JitterRetryTime",
17458             "RetryTimeFactor"
17459           ]
17460         },
17461         "RetryStrategyResult": {
17462           "type": "object",
17463           "properties": {
17464             "Error": {
17465               "$ref": "#/definitions/Error"
17466             },
17467             "Result": {
17468               "$ref": "#/definitions/RetryStrategy"
17469             }
17470           },
17471           "additionalProperties": false,
17472           "required": [
17473             "Error",
17474             "Result"
17475           ]
17476         },
17477         "RetryStrategyResults": {
17478           "type": "object",
17479           "properties": {
17480             "Results": {
17481               "type": "array",
17482               "items": {
17483                 "$ref": "#/definitions/RetryStrategyResult"
17484               }
17485             }
17486           },
17487           "additionalProperties": false,
17488           "required": [
17489             "Results"
17490           ]
17491         },
17492         "caveat": {
17493           "type": "object",
17494           "properties": {
17495             "caveatId": {
17496               "$ref": "#/definitions/packet"
17497             },
17498             "location": {
17499               "$ref": "#/definitions/packet"
17500             },
17501             "verificationId": {
17502               "$ref": "#/definitions/packet"
17503             }
17504           },
17505           "additionalProperties": false,
17506           "required": [
17507             "location",
17508             "caveatId",
17509             "verificationId"
17510           ]
17511         },
17512         "packet": {
17513           "type": "object",
17514           "properties": {
17515             "headerLen": {
17516               "type": "integer"
17517             },
17518             "start": {
17519               "type": "integer"
17520             },
17521             "totalLen": {
17522               "type": "integer"
17523             }
17524           },
17525           "additionalProperties": false,
17526           "required": [
17527             "start",
17528             "totalLen",
17529             "headerLen"
17530           ]
17531         }
17532       }
17533     }
17534   },
17535   {
17536     "Name": "SSHClient",
17537     "Version": 1,
17538     "Schema": {
17539       "type": "object",
17540       "properties": {
17541         "PrivateAddress": {
17542           "type": "object",
17543           "properties": {
17544             "Params": {
17545               "$ref": "#/definitions/Entities"
17546             },
17547             "Result": {
17548               "$ref": "#/definitions/SSHAddressResults"
17549             }
17550           }
17551         },
17552         "Proxy": {
17553           "type": "object",
17554           "properties": {
17555             "Result": {
17556               "$ref": "#/definitions/SSHProxyResult"
17557             }
17558           }
17559         },
17560         "PublicAddress": {
17561           "type": "object",
17562           "properties": {
17563             "Params": {
17564               "$ref": "#/definitions/Entities"
17565             },
17566             "Result": {
17567               "$ref": "#/definitions/SSHAddressResults"
17568             }
17569           }
17570         },
17571         "PublicKeys": {
17572           "type": "object",
17573           "properties": {
17574             "Params": {
17575               "$ref": "#/definitions/Entities"
17576             },
17577             "Result": {
17578               "$ref": "#/definitions/SSHPublicKeysResults"
17579             }
17580           }
17581         }
17582       },
17583       "definitions": {
17584         "Entities": {
17585           "type": "object",
17586           "properties": {
17587             "Entities": {
17588               "type": "array",
17589               "items": {
17590                 "$ref": "#/definitions/Entity"
17591               }
17592             }
17593           },
17594           "additionalProperties": false,
17595           "required": [
17596             "Entities"
17597           ]
17598         },
17599         "Entity": {
17600           "type": "object",
17601           "properties": {
17602             "Tag": {
17603               "type": "string"
17604             }
17605           },
17606           "additionalProperties": false,
17607           "required": [
17608             "Tag"
17609           ]
17610         },
17611         "Error": {
17612           "type": "object",
17613           "properties": {
17614             "Code": {
17615               "type": "string"
17616             },
17617             "Info": {
17618               "$ref": "#/definitions/ErrorInfo"
17619             },
17620             "Message": {
17621               "type": "string"
17622             }
17623           },
17624           "additionalProperties": false,
17625           "required": [
17626             "Message",
17627             "Code"
17628           ]
17629         },
17630         "ErrorInfo": {
17631           "type": "object",
17632           "properties": {
17633             "Macaroon": {
17634               "$ref": "#/definitions/Macaroon"
17635             },
17636             "MacaroonPath": {
17637               "type": "string"
17638             }
17639           },
17640           "additionalProperties": false
17641         },
17642         "Macaroon": {
17643           "type": "object",
17644           "properties": {
17645             "caveats": {
17646               "type": "array",
17647               "items": {
17648                 "$ref": "#/definitions/caveat"
17649               }
17650             },
17651             "data": {
17652               "type": "array",
17653               "items": {
17654                 "type": "integer"
17655               }
17656             },
17657             "id": {
17658               "$ref": "#/definitions/packet"
17659             },
17660             "location": {
17661               "$ref": "#/definitions/packet"
17662             },
17663             "sig": {
17664               "type": "array",
17665               "items": {
17666                 "type": "integer"
17667               }
17668             }
17669           },
17670           "additionalProperties": false,
17671           "required": [
17672             "data",
17673             "location",
17674             "id",
17675             "caveats",
17676             "sig"
17677           ]
17678         },
17679         "SSHAddressResult": {
17680           "type": "object",
17681           "properties": {
17682             "address": {
17683               "type": "string"
17684             },
17685             "error": {
17686               "$ref": "#/definitions/Error"
17687             }
17688           },
17689           "additionalProperties": false
17690         },
17691         "SSHAddressResults": {
17692           "type": "object",
17693           "properties": {
17694             "results": {
17695               "type": "array",
17696               "items": {
17697                 "$ref": "#/definitions/SSHAddressResult"
17698               }
17699             }
17700           },
17701           "additionalProperties": false,
17702           "required": [
17703             "results"
17704           ]
17705         },
17706         "SSHProxyResult": {
17707           "type": "object",
17708           "properties": {
17709             "use-proxy": {
17710               "type": "boolean"
17711             }
17712           },
17713           "additionalProperties": false,
17714           "required": [
17715             "use-proxy"
17716           ]
17717         },
17718         "SSHPublicKeysResult": {
17719           "type": "object",
17720           "properties": {
17721             "error": {
17722               "$ref": "#/definitions/Error"
17723             },
17724             "public-keys": {
17725               "type": "array",
17726               "items": {
17727                 "type": "string"
17728               }
17729             }
17730           },
17731           "additionalProperties": false
17732         },
17733         "SSHPublicKeysResults": {
17734           "type": "object",
17735           "properties": {
17736             "results": {
17737               "type": "array",
17738               "items": {
17739                 "$ref": "#/definitions/SSHPublicKeysResult"
17740               }
17741             }
17742           },
17743           "additionalProperties": false,
17744           "required": [
17745             "results"
17746           ]
17747         },
17748         "caveat": {
17749           "type": "object",
17750           "properties": {
17751             "caveatId": {
17752               "$ref": "#/definitions/packet"
17753             },
17754             "location": {
17755               "$ref": "#/definitions/packet"
17756             },
17757             "verificationId": {
17758               "$ref": "#/definitions/packet"
17759             }
17760           },
17761           "additionalProperties": false,
17762           "required": [
17763             "location",
17764             "caveatId",
17765             "verificationId"
17766           ]
17767         },
17768         "packet": {
17769           "type": "object",
17770           "properties": {
17771             "headerLen": {
17772               "type": "integer"
17773             },
17774             "start": {
17775               "type": "integer"
17776             },
17777             "totalLen": {
17778               "type": "integer"
17779             }
17780           },
17781           "additionalProperties": false,
17782           "required": [
17783             "start",
17784             "totalLen",
17785             "headerLen"
17786           ]
17787         }
17788       }
17789     }
17790   },
17791   {
17792     "Name": "Singular",
17793     "Version": 1,
17794     "Schema": {
17795       "type": "object",
17796       "properties": {
17797         "Claim": {
17798           "type": "object",
17799           "properties": {
17800             "Params": {
17801               "$ref": "#/definitions/SingularClaims"
17802             },
17803             "Result": {
17804               "$ref": "#/definitions/ErrorResults"
17805             }
17806           }
17807         },
17808         "Wait": {
17809           "type": "object",
17810           "properties": {
17811             "Params": {
17812               "$ref": "#/definitions/Entities"
17813             },
17814             "Result": {
17815               "$ref": "#/definitions/ErrorResults"
17816             }
17817           }
17818         }
17819       },
17820       "definitions": {
17821         "Entities": {
17822           "type": "object",
17823           "properties": {
17824             "Entities": {
17825               "type": "array",
17826               "items": {
17827                 "$ref": "#/definitions/Entity"
17828               }
17829             }
17830           },
17831           "additionalProperties": false,
17832           "required": [
17833             "Entities"
17834           ]
17835         },
17836         "Entity": {
17837           "type": "object",
17838           "properties": {
17839             "Tag": {
17840               "type": "string"
17841             }
17842           },
17843           "additionalProperties": false,
17844           "required": [
17845             "Tag"
17846           ]
17847         },
17848         "Error": {
17849           "type": "object",
17850           "properties": {
17851             "Code": {
17852               "type": "string"
17853             },
17854             "Info": {
17855               "$ref": "#/definitions/ErrorInfo"
17856             },
17857             "Message": {
17858               "type": "string"
17859             }
17860           },
17861           "additionalProperties": false,
17862           "required": [
17863             "Message",
17864             "Code"
17865           ]
17866         },
17867         "ErrorInfo": {
17868           "type": "object",
17869           "properties": {
17870             "Macaroon": {
17871               "$ref": "#/definitions/Macaroon"
17872             },
17873             "MacaroonPath": {
17874               "type": "string"
17875             }
17876           },
17877           "additionalProperties": false
17878         },
17879         "ErrorResult": {
17880           "type": "object",
17881           "properties": {
17882             "Error": {
17883               "$ref": "#/definitions/Error"
17884             }
17885           },
17886           "additionalProperties": false,
17887           "required": [
17888             "Error"
17889           ]
17890         },
17891         "ErrorResults": {
17892           "type": "object",
17893           "properties": {
17894             "Results": {
17895               "type": "array",
17896               "items": {
17897                 "$ref": "#/definitions/ErrorResult"
17898               }
17899             }
17900           },
17901           "additionalProperties": false,
17902           "required": [
17903             "Results"
17904           ]
17905         },
17906         "Macaroon": {
17907           "type": "object",
17908           "properties": {
17909             "caveats": {
17910               "type": "array",
17911               "items": {
17912                 "$ref": "#/definitions/caveat"
17913               }
17914             },
17915             "data": {
17916               "type": "array",
17917               "items": {
17918                 "type": "integer"
17919               }
17920             },
17921             "id": {
17922               "$ref": "#/definitions/packet"
17923             },
17924             "location": {
17925               "$ref": "#/definitions/packet"
17926             },
17927             "sig": {
17928               "type": "array",
17929               "items": {
17930                 "type": "integer"
17931               }
17932             }
17933           },
17934           "additionalProperties": false,
17935           "required": [
17936             "data",
17937             "location",
17938             "id",
17939             "caveats",
17940             "sig"
17941           ]
17942         },
17943         "SingularClaim": {
17944           "type": "object",
17945           "properties": {
17946             "ControllerTag": {
17947               "type": "string"
17948             },
17949             "Duration": {
17950               "type": "integer"
17951             },
17952             "ModelTag": {
17953               "type": "string"
17954             }
17955           },
17956           "additionalProperties": false,
17957           "required": [
17958             "ModelTag",
17959             "ControllerTag",
17960             "Duration"
17961           ]
17962         },
17963         "SingularClaims": {
17964           "type": "object",
17965           "properties": {
17966             "Claims": {
17967               "type": "array",
17968               "items": {
17969                 "$ref": "#/definitions/SingularClaim"
17970               }
17971             }
17972           },
17973           "additionalProperties": false,
17974           "required": [
17975             "Claims"
17976           ]
17977         },
17978         "caveat": {
17979           "type": "object",
17980           "properties": {
17981             "caveatId": {
17982               "$ref": "#/definitions/packet"
17983             },
17984             "location": {
17985               "$ref": "#/definitions/packet"
17986             },
17987             "verificationId": {
17988               "$ref": "#/definitions/packet"
17989             }
17990           },
17991           "additionalProperties": false,
17992           "required": [
17993             "location",
17994             "caveatId",
17995             "verificationId"
17996           ]
17997         },
17998         "packet": {
17999           "type": "object",
18000           "properties": {
18001             "headerLen": {
18002               "type": "integer"
18003             },
18004             "start": {
18005               "type": "integer"
18006             },
18007             "totalLen": {
18008               "type": "integer"
18009             }
18010           },
18011           "additionalProperties": false,
18012           "required": [
18013             "start",
18014             "totalLen",
18015             "headerLen"
18016           ]
18017         }
18018       }
18019     }
18020   },
18021   {
18022     "Name": "Spaces",
18023     "Version": 2,
18024     "Schema": {
18025       "type": "object",
18026       "properties": {
18027         "CreateSpaces": {
18028           "type": "object",
18029           "properties": {
18030             "Params": {
18031               "$ref": "#/definitions/CreateSpacesParams"
18032             },
18033             "Result": {
18034               "$ref": "#/definitions/ErrorResults"
18035             }
18036           }
18037         },
18038         "ListSpaces": {
18039           "type": "object",
18040           "properties": {
18041             "Result": {
18042               "$ref": "#/definitions/ListSpacesResults"
18043             }
18044           }
18045         }
18046       },
18047       "definitions": {
18048         "CreateSpaceParams": {
18049           "type": "object",
18050           "properties": {
18051             "ProviderId": {
18052               "type": "string"
18053             },
18054             "Public": {
18055               "type": "boolean"
18056             },
18057             "SpaceTag": {
18058               "type": "string"
18059             },
18060             "SubnetTags": {
18061               "type": "array",
18062               "items": {
18063                 "type": "string"
18064               }
18065             }
18066           },
18067           "additionalProperties": false,
18068           "required": [
18069             "SubnetTags",
18070             "SpaceTag",
18071             "Public"
18072           ]
18073         },
18074         "CreateSpacesParams": {
18075           "type": "object",
18076           "properties": {
18077             "Spaces": {
18078               "type": "array",
18079               "items": {
18080                 "$ref": "#/definitions/CreateSpaceParams"
18081               }
18082             }
18083           },
18084           "additionalProperties": false,
18085           "required": [
18086             "Spaces"
18087           ]
18088         },
18089         "Error": {
18090           "type": "object",
18091           "properties": {
18092             "Code": {
18093               "type": "string"
18094             },
18095             "Info": {
18096               "$ref": "#/definitions/ErrorInfo"
18097             },
18098             "Message": {
18099               "type": "string"
18100             }
18101           },
18102           "additionalProperties": false,
18103           "required": [
18104             "Message",
18105             "Code"
18106           ]
18107         },
18108         "ErrorInfo": {
18109           "type": "object",
18110           "properties": {
18111             "Macaroon": {
18112               "$ref": "#/definitions/Macaroon"
18113             },
18114             "MacaroonPath": {
18115               "type": "string"
18116             }
18117           },
18118           "additionalProperties": false
18119         },
18120         "ErrorResult": {
18121           "type": "object",
18122           "properties": {
18123             "Error": {
18124               "$ref": "#/definitions/Error"
18125             }
18126           },
18127           "additionalProperties": false,
18128           "required": [
18129             "Error"
18130           ]
18131         },
18132         "ErrorResults": {
18133           "type": "object",
18134           "properties": {
18135             "Results": {
18136               "type": "array",
18137               "items": {
18138                 "$ref": "#/definitions/ErrorResult"
18139               }
18140             }
18141           },
18142           "additionalProperties": false,
18143           "required": [
18144             "Results"
18145           ]
18146         },
18147         "ListSpacesResults": {
18148           "type": "object",
18149           "properties": {
18150             "Results": {
18151               "type": "array",
18152               "items": {
18153                 "$ref": "#/definitions/Space"
18154               }
18155             }
18156           },
18157           "additionalProperties": false,
18158           "required": [
18159             "Results"
18160           ]
18161         },
18162         "Macaroon": {
18163           "type": "object",
18164           "properties": {
18165             "caveats": {
18166               "type": "array",
18167               "items": {
18168                 "$ref": "#/definitions/caveat"
18169               }
18170             },
18171             "data": {
18172               "type": "array",
18173               "items": {
18174                 "type": "integer"
18175               }
18176             },
18177             "id": {
18178               "$ref": "#/definitions/packet"
18179             },
18180             "location": {
18181               "$ref": "#/definitions/packet"
18182             },
18183             "sig": {
18184               "type": "array",
18185               "items": {
18186                 "type": "integer"
18187               }
18188             }
18189           },
18190           "additionalProperties": false,
18191           "required": [
18192             "data",
18193             "location",
18194             "id",
18195             "caveats",
18196             "sig"
18197           ]
18198         },
18199         "Space": {
18200           "type": "object",
18201           "properties": {
18202             "Error": {
18203               "$ref": "#/definitions/Error"
18204             },
18205             "Name": {
18206               "type": "string"
18207             },
18208             "Subnets": {
18209               "type": "array",
18210               "items": {
18211                 "$ref": "#/definitions/Subnet"
18212               }
18213             }
18214           },
18215           "additionalProperties": false,
18216           "required": [
18217             "Name",
18218             "Subnets"
18219           ]
18220         },
18221         "Subnet": {
18222           "type": "object",
18223           "properties": {
18224             "CIDR": {
18225               "type": "string"
18226             },
18227             "Life": {
18228               "type": "string"
18229             },
18230             "ProviderId": {
18231               "type": "string"
18232             },
18233             "SpaceTag": {
18234               "type": "string"
18235             },
18236             "StaticRangeHighIP": {
18237               "type": "array",
18238               "items": {
18239                 "type": "integer"
18240               }
18241             },
18242             "StaticRangeLowIP": {
18243               "type": "array",
18244               "items": {
18245                 "type": "integer"
18246               }
18247             },
18248             "Status": {
18249               "type": "string"
18250             },
18251             "VLANTag": {
18252               "type": "integer"
18253             },
18254             "Zones": {
18255               "type": "array",
18256               "items": {
18257                 "type": "string"
18258               }
18259             }
18260           },
18261           "additionalProperties": false,
18262           "required": [
18263             "CIDR",
18264             "VLANTag",
18265             "Life",
18266             "SpaceTag",
18267             "Zones"
18268           ]
18269         },
18270         "caveat": {
18271           "type": "object",
18272           "properties": {
18273             "caveatId": {
18274               "$ref": "#/definitions/packet"
18275             },
18276             "location": {
18277               "$ref": "#/definitions/packet"
18278             },
18279             "verificationId": {
18280               "$ref": "#/definitions/packet"
18281             }
18282           },
18283           "additionalProperties": false,
18284           "required": [
18285             "location",
18286             "caveatId",
18287             "verificationId"
18288           ]
18289         },
18290         "packet": {
18291           "type": "object",
18292           "properties": {
18293             "headerLen": {
18294               "type": "integer"
18295             },
18296             "start": {
18297               "type": "integer"
18298             },
18299             "totalLen": {
18300               "type": "integer"
18301             }
18302           },
18303           "additionalProperties": false,
18304           "required": [
18305             "start",
18306             "totalLen",
18307             "headerLen"
18308           ]
18309         }
18310       }
18311     }
18312   },
18313   {
18314     "Name": "StatusHistory",
18315     "Version": 2,
18316     "Schema": {
18317       "type": "object",
18318       "properties": {
18319         "Prune": {
18320           "type": "object",
18321           "properties": {
18322             "Params": {
18323               "$ref": "#/definitions/StatusHistoryPruneArgs"
18324             }
18325           }
18326         }
18327       },
18328       "definitions": {
18329         "StatusHistoryPruneArgs": {
18330           "type": "object",
18331           "properties": {
18332             "MaxHistoryMB": {
18333               "type": "integer"
18334             },
18335             "MaxHistoryTime": {
18336               "type": "integer"
18337             }
18338           },
18339           "additionalProperties": false,
18340           "required": [
18341             "MaxHistoryTime",
18342             "MaxHistoryMB"
18343           ]
18344         }
18345       }
18346     }
18347   },
18348   {
18349     "Name": "Storage",
18350     "Version": 2,
18351     "Schema": {
18352       "type": "object",
18353       "properties": {
18354         "AddToUnit": {
18355           "type": "object",
18356           "properties": {
18357             "Params": {
18358               "$ref": "#/definitions/StoragesAddParams"
18359             },
18360             "Result": {
18361               "$ref": "#/definitions/ErrorResults"
18362             }
18363           }
18364         },
18365         "CreatePool": {
18366           "type": "object",
18367           "properties": {
18368             "Params": {
18369               "$ref": "#/definitions/StoragePool"
18370             }
18371           }
18372         },
18373         "ListFilesystems": {
18374           "type": "object",
18375           "properties": {
18376             "Params": {
18377               "$ref": "#/definitions/FilesystemFilters"
18378             },
18379             "Result": {
18380               "$ref": "#/definitions/FilesystemDetailsListResults"
18381             }
18382           }
18383         },
18384         "ListPools": {
18385           "type": "object",
18386           "properties": {
18387             "Params": {
18388               "$ref": "#/definitions/StoragePoolFilters"
18389             },
18390             "Result": {
18391               "$ref": "#/definitions/StoragePoolsResults"
18392             }
18393           }
18394         },
18395         "ListStorageDetails": {
18396           "type": "object",
18397           "properties": {
18398             "Params": {
18399               "$ref": "#/definitions/StorageFilters"
18400             },
18401             "Result": {
18402               "$ref": "#/definitions/StorageDetailsListResults"
18403             }
18404           }
18405         },
18406         "ListVolumes": {
18407           "type": "object",
18408           "properties": {
18409             "Params": {
18410               "$ref": "#/definitions/VolumeFilters"
18411             },
18412             "Result": {
18413               "$ref": "#/definitions/VolumeDetailsListResults"
18414             }
18415           }
18416         },
18417         "StorageDetails": {
18418           "type": "object",
18419           "properties": {
18420             "Params": {
18421               "$ref": "#/definitions/Entities"
18422             },
18423             "Result": {
18424               "$ref": "#/definitions/StorageDetailsResults"
18425             }
18426           }
18427         }
18428       },
18429       "definitions": {
18430         "Entities": {
18431           "type": "object",
18432           "properties": {
18433             "Entities": {
18434               "type": "array",
18435               "items": {
18436                 "$ref": "#/definitions/Entity"
18437               }
18438             }
18439           },
18440           "additionalProperties": false,
18441           "required": [
18442             "Entities"
18443           ]
18444         },
18445         "Entity": {
18446           "type": "object",
18447           "properties": {
18448             "Tag": {
18449               "type": "string"
18450             }
18451           },
18452           "additionalProperties": false,
18453           "required": [
18454             "Tag"
18455           ]
18456         },
18457         "EntityStatus": {
18458           "type": "object",
18459           "properties": {
18460             "Data": {
18461               "type": "object",
18462               "patternProperties": {
18463                 ".*": {
18464                   "type": "object",
18465                   "additionalProperties": true
18466                 }
18467               }
18468             },
18469             "Info": {
18470               "type": "string"
18471             },
18472             "Since": {
18473               "type": "string",
18474               "format": "date-time"
18475             },
18476             "Status": {
18477               "type": "string"
18478             }
18479           },
18480           "additionalProperties": false,
18481           "required": [
18482             "Status",
18483             "Info",
18484             "Data",
18485             "Since"
18486           ]
18487         },
18488         "Error": {
18489           "type": "object",
18490           "properties": {
18491             "Code": {
18492               "type": "string"
18493             },
18494             "Info": {
18495               "$ref": "#/definitions/ErrorInfo"
18496             },
18497             "Message": {
18498               "type": "string"
18499             }
18500           },
18501           "additionalProperties": false,
18502           "required": [
18503             "Message",
18504             "Code"
18505           ]
18506         },
18507         "ErrorInfo": {
18508           "type": "object",
18509           "properties": {
18510             "Macaroon": {
18511               "$ref": "#/definitions/Macaroon"
18512             },
18513             "MacaroonPath": {
18514               "type": "string"
18515             }
18516           },
18517           "additionalProperties": false
18518         },
18519         "ErrorResult": {
18520           "type": "object",
18521           "properties": {
18522             "Error": {
18523               "$ref": "#/definitions/Error"
18524             }
18525           },
18526           "additionalProperties": false,
18527           "required": [
18528             "Error"
18529           ]
18530         },
18531         "ErrorResults": {
18532           "type": "object",
18533           "properties": {
18534             "Results": {
18535               "type": "array",
18536               "items": {
18537                 "$ref": "#/definitions/ErrorResult"
18538               }
18539             }
18540           },
18541           "additionalProperties": false,
18542           "required": [
18543             "Results"
18544           ]
18545         },
18546         "FilesystemAttachmentInfo": {
18547           "type": "object",
18548           "properties": {
18549             "mountpoint": {
18550               "type": "string"
18551             },
18552             "read-only": {
18553               "type": "boolean"
18554             }
18555           },
18556           "additionalProperties": false
18557         },
18558         "FilesystemDetails": {
18559           "type": "object",
18560           "properties": {
18561             "filesystemtag": {
18562               "type": "string"
18563             },
18564             "info": {
18565               "$ref": "#/definitions/FilesystemInfo"
18566             },
18567             "machineattachments": {
18568               "type": "object",
18569               "patternProperties": {
18570                 ".*": {
18571                   "$ref": "#/definitions/FilesystemAttachmentInfo"
18572                 }
18573               }
18574             },
18575             "status": {
18576               "$ref": "#/definitions/EntityStatus"
18577             },
18578             "storage": {
18579               "$ref": "#/definitions/StorageDetails"
18580             },
18581             "volumetag": {
18582               "type": "string"
18583             }
18584           },
18585           "additionalProperties": false,
18586           "required": [
18587             "filesystemtag",
18588             "info",
18589             "status"
18590           ]
18591         },
18592         "FilesystemDetailsListResult": {
18593           "type": "object",
18594           "properties": {
18595             "error": {
18596               "$ref": "#/definitions/Error"
18597             },
18598             "result": {
18599               "type": "array",
18600               "items": {
18601                 "$ref": "#/definitions/FilesystemDetails"
18602               }
18603             }
18604           },
18605           "additionalProperties": false
18606         },
18607         "FilesystemDetailsListResults": {
18608           "type": "object",
18609           "properties": {
18610             "results": {
18611               "type": "array",
18612               "items": {
18613                 "$ref": "#/definitions/FilesystemDetailsListResult"
18614               }
18615             }
18616           },
18617           "additionalProperties": false
18618         },
18619         "FilesystemFilter": {
18620           "type": "object",
18621           "properties": {
18622             "machines": {
18623               "type": "array",
18624               "items": {
18625                 "type": "string"
18626               }
18627             }
18628           },
18629           "additionalProperties": false
18630         },
18631         "FilesystemFilters": {
18632           "type": "object",
18633           "properties": {
18634             "filters": {
18635               "type": "array",
18636               "items": {
18637                 "$ref": "#/definitions/FilesystemFilter"
18638               }
18639             }
18640           },
18641           "additionalProperties": false
18642         },
18643         "FilesystemInfo": {
18644           "type": "object",
18645           "properties": {
18646             "filesystemid": {
18647               "type": "string"
18648             },
18649             "size": {
18650               "type": "integer"
18651             }
18652           },
18653           "additionalProperties": false,
18654           "required": [
18655             "filesystemid",
18656             "size"
18657           ]
18658         },
18659         "Macaroon": {
18660           "type": "object",
18661           "properties": {
18662             "caveats": {
18663               "type": "array",
18664               "items": {
18665                 "$ref": "#/definitions/caveat"
18666               }
18667             },
18668             "data": {
18669               "type": "array",
18670               "items": {
18671                 "type": "integer"
18672               }
18673             },
18674             "id": {
18675               "$ref": "#/definitions/packet"
18676             },
18677             "location": {
18678               "$ref": "#/definitions/packet"
18679             },
18680             "sig": {
18681               "type": "array",
18682               "items": {
18683                 "type": "integer"
18684               }
18685             }
18686           },
18687           "additionalProperties": false,
18688           "required": [
18689             "data",
18690             "location",
18691             "id",
18692             "caveats",
18693             "sig"
18694           ]
18695         },
18696         "StorageAddParams": {
18697           "type": "object",
18698           "properties": {
18699             "StorageName": {
18700               "type": "string"
18701             },
18702             "storage": {
18703               "$ref": "#/definitions/StorageConstraints"
18704             },
18705             "unit": {
18706               "type": "string"
18707             }
18708           },
18709           "additionalProperties": false,
18710           "required": [
18711             "unit",
18712             "StorageName",
18713             "storage"
18714           ]
18715         },
18716         "StorageAttachmentDetails": {
18717           "type": "object",
18718           "properties": {
18719             "location": {
18720               "type": "string"
18721             },
18722             "machinetag": {
18723               "type": "string"
18724             },
18725             "storagetag": {
18726               "type": "string"
18727             },
18728             "unittag": {
18729               "type": "string"
18730             }
18731           },
18732           "additionalProperties": false,
18733           "required": [
18734             "storagetag",
18735             "unittag",
18736             "machinetag"
18737           ]
18738         },
18739         "StorageConstraints": {
18740           "type": "object",
18741           "properties": {
18742             "Count": {
18743               "type": "integer"
18744             },
18745             "Pool": {
18746               "type": "string"
18747             },
18748             "Size": {
18749               "type": "integer"
18750             }
18751           },
18752           "additionalProperties": false,
18753           "required": [
18754             "Pool",
18755             "Size",
18756             "Count"
18757           ]
18758         },
18759         "StorageDetails": {
18760           "type": "object",
18761           "properties": {
18762             "Persistent": {
18763               "type": "boolean"
18764             },
18765             "attachments": {
18766               "type": "object",
18767               "patternProperties": {
18768                 ".*": {
18769                   "$ref": "#/definitions/StorageAttachmentDetails"
18770                 }
18771               }
18772             },
18773             "kind": {
18774               "type": "integer"
18775             },
18776             "ownertag": {
18777               "type": "string"
18778             },
18779             "status": {
18780               "$ref": "#/definitions/EntityStatus"
18781             },
18782             "storagetag": {
18783               "type": "string"
18784             }
18785           },
18786           "additionalProperties": false,
18787           "required": [
18788             "storagetag",
18789             "ownertag",
18790             "kind",
18791             "status",
18792             "Persistent"
18793           ]
18794         },
18795         "StorageDetailsListResult": {
18796           "type": "object",
18797           "properties": {
18798             "error": {
18799               "$ref": "#/definitions/Error"
18800             },
18801             "result": {
18802               "type": "array",
18803               "items": {
18804                 "$ref": "#/definitions/StorageDetails"
18805               }
18806             }
18807           },
18808           "additionalProperties": false
18809         },
18810         "StorageDetailsListResults": {
18811           "type": "object",
18812           "properties": {
18813             "results": {
18814               "type": "array",
18815               "items": {
18816                 "$ref": "#/definitions/StorageDetailsListResult"
18817               }
18818             }
18819           },
18820           "additionalProperties": false
18821         },
18822         "StorageDetailsResult": {
18823           "type": "object",
18824           "properties": {
18825             "error": {
18826               "$ref": "#/definitions/Error"
18827             },
18828             "result": {
18829               "$ref": "#/definitions/StorageDetails"
18830             }
18831           },
18832           "additionalProperties": false
18833         },
18834         "StorageDetailsResults": {
18835           "type": "object",
18836           "properties": {
18837             "results": {
18838               "type": "array",
18839               "items": {
18840                 "$ref": "#/definitions/StorageDetailsResult"
18841               }
18842             }
18843           },
18844           "additionalProperties": false
18845         },
18846         "StorageFilter": {
18847           "type": "object",
18848           "additionalProperties": false
18849         },
18850         "StorageFilters": {
18851           "type": "object",
18852           "properties": {
18853             "filters": {
18854               "type": "array",
18855               "items": {
18856                 "$ref": "#/definitions/StorageFilter"
18857               }
18858             }
18859           },
18860           "additionalProperties": false
18861         },
18862         "StoragePool": {
18863           "type": "object",
18864           "properties": {
18865             "attrs": {
18866               "type": "object",
18867               "patternProperties": {
18868                 ".*": {
18869                   "type": "object",
18870                   "additionalProperties": true
18871                 }
18872               }
18873             },
18874             "name": {
18875               "type": "string"
18876             },
18877             "provider": {
18878               "type": "string"
18879             }
18880           },
18881           "additionalProperties": false,
18882           "required": [
18883             "name",
18884             "provider",
18885             "attrs"
18886           ]
18887         },
18888         "StoragePoolFilter": {
18889           "type": "object",
18890           "properties": {
18891             "names": {
18892               "type": "array",
18893               "items": {
18894                 "type": "string"
18895               }
18896             },
18897             "providers": {
18898               "type": "array",
18899               "items": {
18900                 "type": "string"
18901               }
18902             }
18903           },
18904           "additionalProperties": false
18905         },
18906         "StoragePoolFilters": {
18907           "type": "object",
18908           "properties": {
18909             "filters": {
18910               "type": "array",
18911               "items": {
18912                 "$ref": "#/definitions/StoragePoolFilter"
18913               }
18914             }
18915           },
18916           "additionalProperties": false
18917         },
18918         "StoragePoolsResult": {
18919           "type": "object",
18920           "properties": {
18921             "error": {
18922               "$ref": "#/definitions/Error"
18923             },
18924             "storagepools": {
18925               "type": "array",
18926               "items": {
18927                 "$ref": "#/definitions/StoragePool"
18928               }
18929             }
18930           },
18931           "additionalProperties": false
18932         },
18933         "StoragePoolsResults": {
18934           "type": "object",
18935           "properties": {
18936             "results": {
18937               "type": "array",
18938               "items": {
18939                 "$ref": "#/definitions/StoragePoolsResult"
18940               }
18941             }
18942           },
18943           "additionalProperties": false
18944         },
18945         "StoragesAddParams": {
18946           "type": "object",
18947           "properties": {
18948             "storages": {
18949               "type": "array",
18950               "items": {
18951                 "$ref": "#/definitions/StorageAddParams"
18952               }
18953             }
18954           },
18955           "additionalProperties": false,
18956           "required": [
18957             "storages"
18958           ]
18959         },
18960         "VolumeAttachmentInfo": {
18961           "type": "object",
18962           "properties": {
18963             "busaddress": {
18964               "type": "string"
18965             },
18966             "devicelink": {
18967               "type": "string"
18968             },
18969             "devicename": {
18970               "type": "string"
18971             },
18972             "read-only": {
18973               "type": "boolean"
18974             }
18975           },
18976           "additionalProperties": false
18977         },
18978         "VolumeDetails": {
18979           "type": "object",
18980           "properties": {
18981             "info": {
18982               "$ref": "#/definitions/VolumeInfo"
18983             },
18984             "machineattachments": {
18985               "type": "object",
18986               "patternProperties": {
18987                 ".*": {
18988                   "$ref": "#/definitions/VolumeAttachmentInfo"
18989                 }
18990               }
18991             },
18992             "status": {
18993               "$ref": "#/definitions/EntityStatus"
18994             },
18995             "storage": {
18996               "$ref": "#/definitions/StorageDetails"
18997             },
18998             "volumetag": {
18999               "type": "string"
19000             }
19001           },
19002           "additionalProperties": false,
19003           "required": [
19004             "volumetag",
19005             "info",
19006             "status"
19007           ]
19008         },
19009         "VolumeDetailsListResult": {
19010           "type": "object",
19011           "properties": {
19012             "error": {
19013               "$ref": "#/definitions/Error"
19014             },
19015             "result": {
19016               "type": "array",
19017               "items": {
19018                 "$ref": "#/definitions/VolumeDetails"
19019               }
19020             }
19021           },
19022           "additionalProperties": false
19023         },
19024         "VolumeDetailsListResults": {
19025           "type": "object",
19026           "properties": {
19027             "results": {
19028               "type": "array",
19029               "items": {
19030                 "$ref": "#/definitions/VolumeDetailsListResult"
19031               }
19032             }
19033           },
19034           "additionalProperties": false
19035         },
19036         "VolumeFilter": {
19037           "type": "object",
19038           "properties": {
19039             "machines": {
19040               "type": "array",
19041               "items": {
19042                 "type": "string"
19043               }
19044             }
19045           },
19046           "additionalProperties": false
19047         },
19048         "VolumeFilters": {
19049           "type": "object",
19050           "properties": {
19051             "filters": {
19052               "type": "array",
19053               "items": {
19054                 "$ref": "#/definitions/VolumeFilter"
19055               }
19056             }
19057           },
19058           "additionalProperties": false
19059         },
19060         "VolumeInfo": {
19061           "type": "object",
19062           "properties": {
19063             "hardwareid": {
19064               "type": "string"
19065             },
19066             "persistent": {
19067               "type": "boolean"
19068             },
19069             "size": {
19070               "type": "integer"
19071             },
19072             "volumeid": {
19073               "type": "string"
19074             }
19075           },
19076           "additionalProperties": false,
19077           "required": [
19078             "volumeid",
19079             "size",
19080             "persistent"
19081           ]
19082         },
19083         "caveat": {
19084           "type": "object",
19085           "properties": {
19086             "caveatId": {
19087               "$ref": "#/definitions/packet"
19088             },
19089             "location": {
19090               "$ref": "#/definitions/packet"
19091             },
19092             "verificationId": {
19093               "$ref": "#/definitions/packet"
19094             }
19095           },
19096           "additionalProperties": false,
19097           "required": [
19098             "location",
19099             "caveatId",
19100             "verificationId"
19101           ]
19102         },
19103         "packet": {
19104           "type": "object",
19105           "properties": {
19106             "headerLen": {
19107               "type": "integer"
19108             },
19109             "start": {
19110               "type": "integer"
19111             },
19112             "totalLen": {
19113               "type": "integer"
19114             }
19115           },
19116           "additionalProperties": false,
19117           "required": [
19118             "start",
19119             "totalLen",
19120             "headerLen"
19121           ]
19122         }
19123       }
19124     }
19125   },
19126   {
19127     "Name": "StorageProvisioner",
19128     "Version": 2,
19129     "Schema": {
19130       "type": "object",
19131       "properties": {
19132         "AttachmentLife": {
19133           "type": "object",
19134           "properties": {
19135             "Params": {
19136               "$ref": "#/definitions/MachineStorageIds"
19137             },
19138             "Result": {
19139               "$ref": "#/definitions/LifeResults"
19140             }
19141           }
19142         },
19143         "EnsureDead": {
19144           "type": "object",
19145           "properties": {
19146             "Params": {
19147               "$ref": "#/definitions/Entities"
19148             },
19149             "Result": {
19150               "$ref": "#/definitions/ErrorResults"
19151             }
19152           }
19153         },
19154         "FilesystemAttachmentParams": {
19155           "type": "object",
19156           "properties": {
19157             "Params": {
19158               "$ref": "#/definitions/MachineStorageIds"
19159             },
19160             "Result": {
19161               "$ref": "#/definitions/FilesystemAttachmentParamsResults"
19162             }
19163           }
19164         },
19165         "FilesystemAttachments": {
19166           "type": "object",
19167           "properties": {
19168             "Params": {
19169               "$ref": "#/definitions/MachineStorageIds"
19170             },
19171             "Result": {
19172               "$ref": "#/definitions/FilesystemAttachmentResults"
19173             }
19174           }
19175         },
19176         "FilesystemParams": {
19177           "type": "object",
19178           "properties": {
19179             "Params": {
19180               "$ref": "#/definitions/Entities"
19181             },
19182             "Result": {
19183               "$ref": "#/definitions/FilesystemParamsResults"
19184             }
19185           }
19186         },
19187         "Filesystems": {
19188           "type": "object",
19189           "properties": {
19190             "Params": {
19191               "$ref": "#/definitions/Entities"
19192             },
19193             "Result": {
19194               "$ref": "#/definitions/FilesystemResults"
19195             }
19196           }
19197         },
19198         "InstanceId": {
19199           "type": "object",
19200           "properties": {
19201             "Params": {
19202               "$ref": "#/definitions/Entities"
19203             },
19204             "Result": {
19205               "$ref": "#/definitions/StringResults"
19206             }
19207           }
19208         },
19209         "Life": {
19210           "type": "object",
19211           "properties": {
19212             "Params": {
19213               "$ref": "#/definitions/Entities"
19214             },
19215             "Result": {
19216               "$ref": "#/definitions/LifeResults"
19217             }
19218           }
19219         },
19220         "ModelConfig": {
19221           "type": "object",
19222           "properties": {
19223             "Result": {
19224               "$ref": "#/definitions/ModelConfigResult"
19225             }
19226           }
19227         },
19228         "Remove": {
19229           "type": "object",
19230           "properties": {
19231             "Params": {
19232               "$ref": "#/definitions/Entities"
19233             },
19234             "Result": {
19235               "$ref": "#/definitions/ErrorResults"
19236             }
19237           }
19238         },
19239         "RemoveAttachment": {
19240           "type": "object",
19241           "properties": {
19242             "Params": {
19243               "$ref": "#/definitions/MachineStorageIds"
19244             },
19245             "Result": {
19246               "$ref": "#/definitions/ErrorResults"
19247             }
19248           }
19249         },
19250         "SetFilesystemAttachmentInfo": {
19251           "type": "object",
19252           "properties": {
19253             "Params": {
19254               "$ref": "#/definitions/FilesystemAttachments"
19255             },
19256             "Result": {
19257               "$ref": "#/definitions/ErrorResults"
19258             }
19259           }
19260         },
19261         "SetFilesystemInfo": {
19262           "type": "object",
19263           "properties": {
19264             "Params": {
19265               "$ref": "#/definitions/Filesystems"
19266             },
19267             "Result": {
19268               "$ref": "#/definitions/ErrorResults"
19269             }
19270           }
19271         },
19272         "SetStatus": {
19273           "type": "object",
19274           "properties": {
19275             "Params": {
19276               "$ref": "#/definitions/SetStatus"
19277             },
19278             "Result": {
19279               "$ref": "#/definitions/ErrorResults"
19280             }
19281           }
19282         },
19283         "SetVolumeAttachmentInfo": {
19284           "type": "object",
19285           "properties": {
19286             "Params": {
19287               "$ref": "#/definitions/VolumeAttachments"
19288             },
19289             "Result": {
19290               "$ref": "#/definitions/ErrorResults"
19291             }
19292           }
19293         },
19294         "SetVolumeInfo": {
19295           "type": "object",
19296           "properties": {
19297             "Params": {
19298               "$ref": "#/definitions/Volumes"
19299             },
19300             "Result": {
19301               "$ref": "#/definitions/ErrorResults"
19302             }
19303           }
19304         },
19305         "UpdateStatus": {
19306           "type": "object",
19307           "properties": {
19308             "Params": {
19309               "$ref": "#/definitions/SetStatus"
19310             },
19311             "Result": {
19312               "$ref": "#/definitions/ErrorResults"
19313             }
19314           }
19315         },
19316         "VolumeAttachmentParams": {
19317           "type": "object",
19318           "properties": {
19319             "Params": {
19320               "$ref": "#/definitions/MachineStorageIds"
19321             },
19322             "Result": {
19323               "$ref": "#/definitions/VolumeAttachmentParamsResults"
19324             }
19325           }
19326         },
19327         "VolumeAttachments": {
19328           "type": "object",
19329           "properties": {
19330             "Params": {
19331               "$ref": "#/definitions/MachineStorageIds"
19332             },
19333             "Result": {
19334               "$ref": "#/definitions/VolumeAttachmentResults"
19335             }
19336           }
19337         },
19338         "VolumeBlockDevices": {
19339           "type": "object",
19340           "properties": {
19341             "Params": {
19342               "$ref": "#/definitions/MachineStorageIds"
19343             },
19344             "Result": {
19345               "$ref": "#/definitions/BlockDeviceResults"
19346             }
19347           }
19348         },
19349         "VolumeParams": {
19350           "type": "object",
19351           "properties": {
19352             "Params": {
19353               "$ref": "#/definitions/Entities"
19354             },
19355             "Result": {
19356               "$ref": "#/definitions/VolumeParamsResults"
19357             }
19358           }
19359         },
19360         "Volumes": {
19361           "type": "object",
19362           "properties": {
19363             "Params": {
19364               "$ref": "#/definitions/Entities"
19365             },
19366             "Result": {
19367               "$ref": "#/definitions/VolumeResults"
19368             }
19369           }
19370         },
19371         "WatchBlockDevices": {
19372           "type": "object",
19373           "properties": {
19374             "Params": {
19375               "$ref": "#/definitions/Entities"
19376             },
19377             "Result": {
19378               "$ref": "#/definitions/NotifyWatchResults"
19379             }
19380           }
19381         },
19382         "WatchFilesystemAttachments": {
19383           "type": "object",
19384           "properties": {
19385             "Params": {
19386               "$ref": "#/definitions/Entities"
19387             },
19388             "Result": {
19389               "$ref": "#/definitions/MachineStorageIdsWatchResults"
19390             }
19391           }
19392         },
19393         "WatchFilesystems": {
19394           "type": "object",
19395           "properties": {
19396             "Params": {
19397               "$ref": "#/definitions/Entities"
19398             },
19399             "Result": {
19400               "$ref": "#/definitions/StringsWatchResults"
19401             }
19402           }
19403         },
19404         "WatchForModelConfigChanges": {
19405           "type": "object",
19406           "properties": {
19407             "Result": {
19408               "$ref": "#/definitions/NotifyWatchResult"
19409             }
19410           }
19411         },
19412         "WatchMachines": {
19413           "type": "object",
19414           "properties": {
19415             "Params": {
19416               "$ref": "#/definitions/Entities"
19417             },
19418             "Result": {
19419               "$ref": "#/definitions/NotifyWatchResults"
19420             }
19421           }
19422         },
19423         "WatchVolumeAttachments": {
19424           "type": "object",
19425           "properties": {
19426             "Params": {
19427               "$ref": "#/definitions/Entities"
19428             },
19429             "Result": {
19430               "$ref": "#/definitions/MachineStorageIdsWatchResults"
19431             }
19432           }
19433         },
19434         "WatchVolumes": {
19435           "type": "object",
19436           "properties": {
19437             "Params": {
19438               "$ref": "#/definitions/Entities"
19439             },
19440             "Result": {
19441               "$ref": "#/definitions/StringsWatchResults"
19442             }
19443           }
19444         }
19445       },
19446       "definitions": {
19447         "BlockDevice": {
19448           "type": "object",
19449           "properties": {
19450             "BusAddress": {
19451               "type": "string"
19452             },
19453             "DeviceLinks": {
19454               "type": "array",
19455               "items": {
19456                 "type": "string"
19457               }
19458             },
19459             "DeviceName": {
19460               "type": "string"
19461             },
19462             "FilesystemType": {
19463               "type": "string"
19464             },
19465             "HardwareId": {
19466               "type": "string"
19467             },
19468             "InUse": {
19469               "type": "boolean"
19470             },
19471             "Label": {
19472               "type": "string"
19473             },
19474             "MountPoint": {
19475               "type": "string"
19476             },
19477             "Size": {
19478               "type": "integer"
19479             },
19480             "UUID": {
19481               "type": "string"
19482             }
19483           },
19484           "additionalProperties": false,
19485           "required": [
19486             "DeviceName",
19487             "DeviceLinks",
19488             "Label",
19489             "UUID",
19490             "HardwareId",
19491             "BusAddress",
19492             "Size",
19493             "FilesystemType",
19494             "InUse",
19495             "MountPoint"
19496           ]
19497         },
19498         "BlockDeviceResult": {
19499           "type": "object",
19500           "properties": {
19501             "error": {
19502               "$ref": "#/definitions/Error"
19503             },
19504             "result": {
19505               "$ref": "#/definitions/BlockDevice"
19506             }
19507           },
19508           "additionalProperties": false,
19509           "required": [
19510             "result"
19511           ]
19512         },
19513         "BlockDeviceResults": {
19514           "type": "object",
19515           "properties": {
19516             "results": {
19517               "type": "array",
19518               "items": {
19519                 "$ref": "#/definitions/BlockDeviceResult"
19520               }
19521             }
19522           },
19523           "additionalProperties": false
19524         },
19525         "Entities": {
19526           "type": "object",
19527           "properties": {
19528             "Entities": {
19529               "type": "array",
19530               "items": {
19531                 "$ref": "#/definitions/Entity"
19532               }
19533             }
19534           },
19535           "additionalProperties": false,
19536           "required": [
19537             "Entities"
19538           ]
19539         },
19540         "Entity": {
19541           "type": "object",
19542           "properties": {
19543             "Tag": {
19544               "type": "string"
19545             }
19546           },
19547           "additionalProperties": false,
19548           "required": [
19549             "Tag"
19550           ]
19551         },
19552         "EntityStatusArgs": {
19553           "type": "object",
19554           "properties": {
19555             "Data": {
19556               "type": "object",
19557               "patternProperties": {
19558                 ".*": {
19559                   "type": "object",
19560                   "additionalProperties": true
19561                 }
19562               }
19563             },
19564             "Info": {
19565               "type": "string"
19566             },
19567             "Status": {
19568               "type": "string"
19569             },
19570             "Tag": {
19571               "type": "string"
19572             }
19573           },
19574           "additionalProperties": false,
19575           "required": [
19576             "Tag",
19577             "Status",
19578             "Info",
19579             "Data"
19580           ]
19581         },
19582         "Error": {
19583           "type": "object",
19584           "properties": {
19585             "Code": {
19586               "type": "string"
19587             },
19588             "Info": {
19589               "$ref": "#/definitions/ErrorInfo"
19590             },
19591             "Message": {
19592               "type": "string"
19593             }
19594           },
19595           "additionalProperties": false,
19596           "required": [
19597             "Message",
19598             "Code"
19599           ]
19600         },
19601         "ErrorInfo": {
19602           "type": "object",
19603           "properties": {
19604             "Macaroon": {
19605               "$ref": "#/definitions/Macaroon"
19606             },
19607             "MacaroonPath": {
19608               "type": "string"
19609             }
19610           },
19611           "additionalProperties": false
19612         },
19613         "ErrorResult": {
19614           "type": "object",
19615           "properties": {
19616             "Error": {
19617               "$ref": "#/definitions/Error"
19618             }
19619           },
19620           "additionalProperties": false,
19621           "required": [
19622             "Error"
19623           ]
19624         },
19625         "ErrorResults": {
19626           "type": "object",
19627           "properties": {
19628             "Results": {
19629               "type": "array",
19630               "items": {
19631                 "$ref": "#/definitions/ErrorResult"
19632               }
19633             }
19634           },
19635           "additionalProperties": false,
19636           "required": [
19637             "Results"
19638           ]
19639         },
19640         "Filesystem": {
19641           "type": "object",
19642           "properties": {
19643             "filesystemtag": {
19644               "type": "string"
19645             },
19646             "info": {
19647               "$ref": "#/definitions/FilesystemInfo"
19648             },
19649             "volumetag": {
19650               "type": "string"
19651             }
19652           },
19653           "additionalProperties": false,
19654           "required": [
19655             "filesystemtag",
19656             "info"
19657           ]
19658         },
19659         "FilesystemAttachment": {
19660           "type": "object",
19661           "properties": {
19662             "filesystemtag": {
19663               "type": "string"
19664             },
19665             "info": {
19666               "$ref": "#/definitions/FilesystemAttachmentInfo"
19667             },
19668             "machinetag": {
19669               "type": "string"
19670             }
19671           },
19672           "additionalProperties": false,
19673           "required": [
19674             "filesystemtag",
19675             "machinetag",
19676             "info"
19677           ]
19678         },
19679         "FilesystemAttachmentInfo": {
19680           "type": "object",
19681           "properties": {
19682             "mountpoint": {
19683               "type": "string"
19684             },
19685             "read-only": {
19686               "type": "boolean"
19687             }
19688           },
19689           "additionalProperties": false
19690         },
19691         "FilesystemAttachmentParams": {
19692           "type": "object",
19693           "properties": {
19694             "filesystemid": {
19695               "type": "string"
19696             },
19697             "filesystemtag": {
19698               "type": "string"
19699             },
19700             "instanceid": {
19701               "type": "string"
19702             },
19703             "machinetag": {
19704               "type": "string"
19705             },
19706             "mountpoint": {
19707               "type": "string"
19708             },
19709             "provider": {
19710               "type": "string"
19711             },
19712             "read-only": {
19713               "type": "boolean"
19714             }
19715           },
19716           "additionalProperties": false,
19717           "required": [
19718             "filesystemtag",
19719             "machinetag",
19720             "provider"
19721           ]
19722         },
19723         "FilesystemAttachmentParamsResult": {
19724           "type": "object",
19725           "properties": {
19726             "error": {
19727               "$ref": "#/definitions/Error"
19728             },
19729             "result": {
19730               "$ref": "#/definitions/FilesystemAttachmentParams"
19731             }
19732           },
19733           "additionalProperties": false,
19734           "required": [
19735             "result"
19736           ]
19737         },
19738         "FilesystemAttachmentParamsResults": {
19739           "type": "object",
19740           "properties": {
19741             "results": {
19742               "type": "array",
19743               "items": {
19744                 "$ref": "#/definitions/FilesystemAttachmentParamsResult"
19745               }
19746             }
19747           },
19748           "additionalProperties": false
19749         },
19750         "FilesystemAttachmentResult": {
19751           "type": "object",
19752           "properties": {
19753             "error": {
19754               "$ref": "#/definitions/Error"
19755             },
19756             "result": {
19757               "$ref": "#/definitions/FilesystemAttachment"
19758             }
19759           },
19760           "additionalProperties": false,
19761           "required": [
19762             "result"
19763           ]
19764         },
19765         "FilesystemAttachmentResults": {
19766           "type": "object",
19767           "properties": {
19768             "results": {
19769               "type": "array",
19770               "items": {
19771                 "$ref": "#/definitions/FilesystemAttachmentResult"
19772               }
19773             }
19774           },
19775           "additionalProperties": false
19776         },
19777         "FilesystemAttachments": {
19778           "type": "object",
19779           "properties": {
19780             "filesystemattachments": {
19781               "type": "array",
19782               "items": {
19783                 "$ref": "#/definitions/FilesystemAttachment"
19784               }
19785             }
19786           },
19787           "additionalProperties": false,
19788           "required": [
19789             "filesystemattachments"
19790           ]
19791         },
19792         "FilesystemInfo": {
19793           "type": "object",
19794           "properties": {
19795             "filesystemid": {
19796               "type": "string"
19797             },
19798             "size": {
19799               "type": "integer"
19800             }
19801           },
19802           "additionalProperties": false,
19803           "required": [
19804             "filesystemid",
19805             "size"
19806           ]
19807         },
19808         "FilesystemParams": {
19809           "type": "object",
19810           "properties": {
19811             "attachment": {
19812               "$ref": "#/definitions/FilesystemAttachmentParams"
19813             },
19814             "attributes": {
19815               "type": "object",
19816               "patternProperties": {
19817                 ".*": {
19818                   "type": "object",
19819                   "additionalProperties": true
19820                 }
19821               }
19822             },
19823             "filesystemtag": {
19824               "type": "string"
19825             },
19826             "provider": {
19827               "type": "string"
19828             },
19829             "size": {
19830               "type": "integer"
19831             },
19832             "tags": {
19833               "type": "object",
19834               "patternProperties": {
19835                 ".*": {
19836                   "type": "string"
19837                 }
19838               }
19839             },
19840             "volumetag": {
19841               "type": "string"
19842             }
19843           },
19844           "additionalProperties": false,
19845           "required": [
19846             "filesystemtag",
19847             "size",
19848             "provider"
19849           ]
19850         },
19851         "FilesystemParamsResult": {
19852           "type": "object",
19853           "properties": {
19854             "error": {
19855               "$ref": "#/definitions/Error"
19856             },
19857             "result": {
19858               "$ref": "#/definitions/FilesystemParams"
19859             }
19860           },
19861           "additionalProperties": false,
19862           "required": [
19863             "result"
19864           ]
19865         },
19866         "FilesystemParamsResults": {
19867           "type": "object",
19868           "properties": {
19869             "results": {
19870               "type": "array",
19871               "items": {
19872                 "$ref": "#/definitions/FilesystemParamsResult"
19873               }
19874             }
19875           },
19876           "additionalProperties": false
19877         },
19878         "FilesystemResult": {
19879           "type": "object",
19880           "properties": {
19881             "error": {
19882               "$ref": "#/definitions/Error"
19883             },
19884             "result": {
19885               "$ref": "#/definitions/Filesystem"
19886             }
19887           },
19888           "additionalProperties": false,
19889           "required": [
19890             "result"
19891           ]
19892         },
19893         "FilesystemResults": {
19894           "type": "object",
19895           "properties": {
19896             "results": {
19897               "type": "array",
19898               "items": {
19899                 "$ref": "#/definitions/FilesystemResult"
19900               }
19901             }
19902           },
19903           "additionalProperties": false
19904         },
19905         "Filesystems": {
19906           "type": "object",
19907           "properties": {
19908             "filesystems": {
19909               "type": "array",
19910               "items": {
19911                 "$ref": "#/definitions/Filesystem"
19912               }
19913             }
19914           },
19915           "additionalProperties": false,
19916           "required": [
19917             "filesystems"
19918           ]
19919         },
19920         "LifeResult": {
19921           "type": "object",
19922           "properties": {
19923             "Error": {
19924               "$ref": "#/definitions/Error"
19925             },
19926             "Life": {
19927               "type": "string"
19928             }
19929           },
19930           "additionalProperties": false,
19931           "required": [
19932             "Life",
19933             "Error"
19934           ]
19935         },
19936         "LifeResults": {
19937           "type": "object",
19938           "properties": {
19939             "Results": {
19940               "type": "array",
19941               "items": {
19942                 "$ref": "#/definitions/LifeResult"
19943               }
19944             }
19945           },
19946           "additionalProperties": false,
19947           "required": [
19948             "Results"
19949           ]
19950         },
19951         "Macaroon": {
19952           "type": "object",
19953           "properties": {
19954             "caveats": {
19955               "type": "array",
19956               "items": {
19957                 "$ref": "#/definitions/caveat"
19958               }
19959             },
19960             "data": {
19961               "type": "array",
19962               "items": {
19963                 "type": "integer"
19964               }
19965             },
19966             "id": {
19967               "$ref": "#/definitions/packet"
19968             },
19969             "location": {
19970               "$ref": "#/definitions/packet"
19971             },
19972             "sig": {
19973               "type": "array",
19974               "items": {
19975                 "type": "integer"
19976               }
19977             }
19978           },
19979           "additionalProperties": false,
19980           "required": [
19981             "data",
19982             "location",
19983             "id",
19984             "caveats",
19985             "sig"
19986           ]
19987         },
19988         "MachineStorageId": {
19989           "type": "object",
19990           "properties": {
19991             "attachmenttag": {
19992               "type": "string"
19993             },
19994             "machinetag": {
19995               "type": "string"
19996             }
19997           },
19998           "additionalProperties": false,
19999           "required": [
20000             "machinetag",
20001             "attachmenttag"
20002           ]
20003         },
20004         "MachineStorageIds": {
20005           "type": "object",
20006           "properties": {
20007             "ids": {
20008               "type": "array",
20009               "items": {
20010                 "$ref": "#/definitions/MachineStorageId"
20011               }
20012             }
20013           },
20014           "additionalProperties": false,
20015           "required": [
20016             "ids"
20017           ]
20018         },
20019         "MachineStorageIdsWatchResult": {
20020           "type": "object",
20021           "properties": {
20022             "Changes": {
20023               "type": "array",
20024               "items": {
20025                 "$ref": "#/definitions/MachineStorageId"
20026               }
20027             },
20028             "Error": {
20029               "$ref": "#/definitions/Error"
20030             },
20031             "MachineStorageIdsWatcherId": {
20032               "type": "string"
20033             }
20034           },
20035           "additionalProperties": false,
20036           "required": [
20037             "MachineStorageIdsWatcherId",
20038             "Changes",
20039             "Error"
20040           ]
20041         },
20042         "MachineStorageIdsWatchResults": {
20043           "type": "object",
20044           "properties": {
20045             "Results": {
20046               "type": "array",
20047               "items": {
20048                 "$ref": "#/definitions/MachineStorageIdsWatchResult"
20049               }
20050             }
20051           },
20052           "additionalProperties": false,
20053           "required": [
20054             "Results"
20055           ]
20056         },
20057         "ModelConfigResult": {
20058           "type": "object",
20059           "properties": {
20060             "Config": {
20061               "type": "object",
20062               "patternProperties": {
20063                 ".*": {
20064                   "type": "object",
20065                   "additionalProperties": true
20066                 }
20067               }
20068             }
20069           },
20070           "additionalProperties": false,
20071           "required": [
20072             "Config"
20073           ]
20074         },
20075         "NotifyWatchResult": {
20076           "type": "object",
20077           "properties": {
20078             "Error": {
20079               "$ref": "#/definitions/Error"
20080             },
20081             "NotifyWatcherId": {
20082               "type": "string"
20083             }
20084           },
20085           "additionalProperties": false,
20086           "required": [
20087             "NotifyWatcherId",
20088             "Error"
20089           ]
20090         },
20091         "NotifyWatchResults": {
20092           "type": "object",
20093           "properties": {
20094             "Results": {
20095               "type": "array",
20096               "items": {
20097                 "$ref": "#/definitions/NotifyWatchResult"
20098               }
20099             }
20100           },
20101           "additionalProperties": false,
20102           "required": [
20103             "Results"
20104           ]
20105         },
20106         "SetStatus": {
20107           "type": "object",
20108           "properties": {
20109             "Entities": {
20110               "type": "array",
20111               "items": {
20112                 "$ref": "#/definitions/EntityStatusArgs"
20113               }
20114             }
20115           },
20116           "additionalProperties": false,
20117           "required": [
20118             "Entities"
20119           ]
20120         },
20121         "StringResult": {
20122           "type": "object",
20123           "properties": {
20124             "Error": {
20125               "$ref": "#/definitions/Error"
20126             },
20127             "Result": {
20128               "type": "string"
20129             }
20130           },
20131           "additionalProperties": false,
20132           "required": [
20133             "Error",
20134             "Result"
20135           ]
20136         },
20137         "StringResults": {
20138           "type": "object",
20139           "properties": {
20140             "Results": {
20141               "type": "array",
20142               "items": {
20143                 "$ref": "#/definitions/StringResult"
20144               }
20145             }
20146           },
20147           "additionalProperties": false,
20148           "required": [
20149             "Results"
20150           ]
20151         },
20152         "StringsWatchResult": {
20153           "type": "object",
20154           "properties": {
20155             "Changes": {
20156               "type": "array",
20157               "items": {
20158                 "type": "string"
20159               }
20160             },
20161             "Error": {
20162               "$ref": "#/definitions/Error"
20163             },
20164             "StringsWatcherId": {
20165               "type": "string"
20166             }
20167           },
20168           "additionalProperties": false,
20169           "required": [
20170             "StringsWatcherId",
20171             "Changes",
20172             "Error"
20173           ]
20174         },
20175         "StringsWatchResults": {
20176           "type": "object",
20177           "properties": {
20178             "Results": {
20179               "type": "array",
20180               "items": {
20181                 "$ref": "#/definitions/StringsWatchResult"
20182               }
20183             }
20184           },
20185           "additionalProperties": false,
20186           "required": [
20187             "Results"
20188           ]
20189         },
20190         "Volume": {
20191           "type": "object",
20192           "properties": {
20193             "info": {
20194               "$ref": "#/definitions/VolumeInfo"
20195             },
20196             "volumetag": {
20197               "type": "string"
20198             }
20199           },
20200           "additionalProperties": false,
20201           "required": [
20202             "volumetag",
20203             "info"
20204           ]
20205         },
20206         "VolumeAttachment": {
20207           "type": "object",
20208           "properties": {
20209             "info": {
20210               "$ref": "#/definitions/VolumeAttachmentInfo"
20211             },
20212             "machinetag": {
20213               "type": "string"
20214             },
20215             "volumetag": {
20216               "type": "string"
20217             }
20218           },
20219           "additionalProperties": false,
20220           "required": [
20221             "volumetag",
20222             "machinetag",
20223             "info"
20224           ]
20225         },
20226         "VolumeAttachmentInfo": {
20227           "type": "object",
20228           "properties": {
20229             "busaddress": {
20230               "type": "string"
20231             },
20232             "devicelink": {
20233               "type": "string"
20234             },
20235             "devicename": {
20236               "type": "string"
20237             },
20238             "read-only": {
20239               "type": "boolean"
20240             }
20241           },
20242           "additionalProperties": false
20243         },
20244         "VolumeAttachmentParams": {
20245           "type": "object",
20246           "properties": {
20247             "instanceid": {
20248               "type": "string"
20249             },
20250             "machinetag": {
20251               "type": "string"
20252             },
20253             "provider": {
20254               "type": "string"
20255             },
20256             "read-only": {
20257               "type": "boolean"
20258             },
20259             "volumeid": {
20260               "type": "string"
20261             },
20262             "volumetag": {
20263               "type": "string"
20264             }
20265           },
20266           "additionalProperties": false,
20267           "required": [
20268             "volumetag",
20269             "machinetag",
20270             "provider"
20271           ]
20272         },
20273         "VolumeAttachmentParamsResult": {
20274           "type": "object",
20275           "properties": {
20276             "error": {
20277               "$ref": "#/definitions/Error"
20278             },
20279             "result": {
20280               "$ref": "#/definitions/VolumeAttachmentParams"
20281             }
20282           },
20283           "additionalProperties": false,
20284           "required": [
20285             "result"
20286           ]
20287         },
20288         "VolumeAttachmentParamsResults": {
20289           "type": "object",
20290           "properties": {
20291             "results": {
20292               "type": "array",
20293               "items": {
20294                 "$ref": "#/definitions/VolumeAttachmentParamsResult"
20295               }
20296             }
20297           },
20298           "additionalProperties": false
20299         },
20300         "VolumeAttachmentResult": {
20301           "type": "object",
20302           "properties": {
20303             "error": {
20304               "$ref": "#/definitions/Error"
20305             },
20306             "result": {
20307               "$ref": "#/definitions/VolumeAttachment"
20308             }
20309           },
20310           "additionalProperties": false,
20311           "required": [
20312             "result"
20313           ]
20314         },
20315         "VolumeAttachmentResults": {
20316           "type": "object",
20317           "properties": {
20318             "results": {
20319               "type": "array",
20320               "items": {
20321                 "$ref": "#/definitions/VolumeAttachmentResult"
20322               }
20323             }
20324           },
20325           "additionalProperties": false
20326         },
20327         "VolumeAttachments": {
20328           "type": "object",
20329           "properties": {
20330             "volumeattachments": {
20331               "type": "array",
20332               "items": {
20333                 "$ref": "#/definitions/VolumeAttachment"
20334               }
20335             }
20336           },
20337           "additionalProperties": false,
20338           "required": [
20339             "volumeattachments"
20340           ]
20341         },
20342         "VolumeInfo": {
20343           "type": "object",
20344           "properties": {
20345             "hardwareid": {
20346               "type": "string"
20347             },
20348             "persistent": {
20349               "type": "boolean"
20350             },
20351             "size": {
20352               "type": "integer"
20353             },
20354             "volumeid": {
20355               "type": "string"
20356             }
20357           },
20358           "additionalProperties": false,
20359           "required": [
20360             "volumeid",
20361             "size",
20362             "persistent"
20363           ]
20364         },
20365         "VolumeParams": {
20366           "type": "object",
20367           "properties": {
20368             "attachment": {
20369               "$ref": "#/definitions/VolumeAttachmentParams"
20370             },
20371             "attributes": {
20372               "type": "object",
20373               "patternProperties": {
20374                 ".*": {
20375                   "type": "object",
20376                   "additionalProperties": true
20377                 }
20378               }
20379             },
20380             "provider": {
20381               "type": "string"
20382             },
20383             "size": {
20384               "type": "integer"
20385             },
20386             "tags": {
20387               "type": "object",
20388               "patternProperties": {
20389                 ".*": {
20390                   "type": "string"
20391                 }
20392               }
20393             },
20394             "volumetag": {
20395               "type": "string"
20396             }
20397           },
20398           "additionalProperties": false,
20399           "required": [
20400             "volumetag",
20401             "size",
20402             "provider"
20403           ]
20404         },
20405         "VolumeParamsResult": {
20406           "type": "object",
20407           "properties": {
20408             "error": {
20409               "$ref": "#/definitions/Error"
20410             },
20411             "result": {
20412               "$ref": "#/definitions/VolumeParams"
20413             }
20414           },
20415           "additionalProperties": false,
20416           "required": [
20417             "result"
20418           ]
20419         },
20420         "VolumeParamsResults": {
20421           "type": "object",
20422           "properties": {
20423             "results": {
20424               "type": "array",
20425               "items": {
20426                 "$ref": "#/definitions/VolumeParamsResult"
20427               }
20428             }
20429           },
20430           "additionalProperties": false
20431         },
20432         "VolumeResult": {
20433           "type": "object",
20434           "properties": {
20435             "error": {
20436               "$ref": "#/definitions/Error"
20437             },
20438             "result": {
20439               "$ref": "#/definitions/Volume"
20440             }
20441           },
20442           "additionalProperties": false,
20443           "required": [
20444             "result"
20445           ]
20446         },
20447         "VolumeResults": {
20448           "type": "object",
20449           "properties": {
20450             "results": {
20451               "type": "array",
20452               "items": {
20453                 "$ref": "#/definitions/VolumeResult"
20454               }
20455             }
20456           },
20457           "additionalProperties": false
20458         },
20459         "Volumes": {
20460           "type": "object",
20461           "properties": {
20462             "volumes": {
20463               "type": "array",
20464               "items": {
20465                 "$ref": "#/definitions/Volume"
20466               }
20467             }
20468           },
20469           "additionalProperties": false,
20470           "required": [
20471             "volumes"
20472           ]
20473         },
20474         "caveat": {
20475           "type": "object",
20476           "properties": {
20477             "caveatId": {
20478               "$ref": "#/definitions/packet"
20479             },
20480             "location": {
20481               "$ref": "#/definitions/packet"
20482             },
20483             "verificationId": {
20484               "$ref": "#/definitions/packet"
20485             }
20486           },
20487           "additionalProperties": false,
20488           "required": [
20489             "location",
20490             "caveatId",
20491             "verificationId"
20492           ]
20493         },
20494         "packet": {
20495           "type": "object",
20496           "properties": {
20497             "headerLen": {
20498               "type": "integer"
20499             },
20500             "start": {
20501               "type": "integer"
20502             },
20503             "totalLen": {
20504               "type": "integer"
20505             }
20506           },
20507           "additionalProperties": false,
20508           "required": [
20509             "start",
20510             "totalLen",
20511             "headerLen"
20512           ]
20513         }
20514       }
20515     }
20516   },
20517   {
20518     "Name": "StringsWatcher",
20519     "Version": 1,
20520     "Schema": {
20521       "type": "object",
20522       "properties": {
20523         "Next": {
20524           "type": "object",
20525           "properties": {
20526             "Result": {
20527               "$ref": "#/definitions/StringsWatchResult"
20528             }
20529           }
20530         },
20531         "Stop": {
20532           "type": "object"
20533         }
20534       },
20535       "definitions": {
20536         "Error": {
20537           "type": "object",
20538           "properties": {
20539             "Code": {
20540               "type": "string"
20541             },
20542             "Info": {
20543               "$ref": "#/definitions/ErrorInfo"
20544             },
20545             "Message": {
20546               "type": "string"
20547             }
20548           },
20549           "additionalProperties": false,
20550           "required": [
20551             "Message",
20552             "Code"
20553           ]
20554         },
20555         "ErrorInfo": {
20556           "type": "object",
20557           "properties": {
20558             "Macaroon": {
20559               "$ref": "#/definitions/Macaroon"
20560             },
20561             "MacaroonPath": {
20562               "type": "string"
20563             }
20564           },
20565           "additionalProperties": false
20566         },
20567         "Macaroon": {
20568           "type": "object",
20569           "properties": {
20570             "caveats": {
20571               "type": "array",
20572               "items": {
20573                 "$ref": "#/definitions/caveat"
20574               }
20575             },
20576             "data": {
20577               "type": "array",
20578               "items": {
20579                 "type": "integer"
20580               }
20581             },
20582             "id": {
20583               "$ref": "#/definitions/packet"
20584             },
20585             "location": {
20586               "$ref": "#/definitions/packet"
20587             },
20588             "sig": {
20589               "type": "array",
20590               "items": {
20591                 "type": "integer"
20592               }
20593             }
20594           },
20595           "additionalProperties": false,
20596           "required": [
20597             "data",
20598             "location",
20599             "id",
20600             "caveats",
20601             "sig"
20602           ]
20603         },
20604         "StringsWatchResult": {
20605           "type": "object",
20606           "properties": {
20607             "Changes": {
20608               "type": "array",
20609               "items": {
20610                 "type": "string"
20611               }
20612             },
20613             "Error": {
20614               "$ref": "#/definitions/Error"
20615             },
20616             "StringsWatcherId": {
20617               "type": "string"
20618             }
20619           },
20620           "additionalProperties": false,
20621           "required": [
20622             "StringsWatcherId",
20623             "Changes",
20624             "Error"
20625           ]
20626         },
20627         "caveat": {
20628           "type": "object",
20629           "properties": {
20630             "caveatId": {
20631               "$ref": "#/definitions/packet"
20632             },
20633             "location": {
20634               "$ref": "#/definitions/packet"
20635             },
20636             "verificationId": {
20637               "$ref": "#/definitions/packet"
20638             }
20639           },
20640           "additionalProperties": false,
20641           "required": [
20642             "location",
20643             "caveatId",
20644             "verificationId"
20645           ]
20646         },
20647         "packet": {
20648           "type": "object",
20649           "properties": {
20650             "headerLen": {
20651               "type": "integer"
20652             },
20653             "start": {
20654               "type": "integer"
20655             },
20656             "totalLen": {
20657               "type": "integer"
20658             }
20659           },
20660           "additionalProperties": false,
20661           "required": [
20662             "start",
20663             "totalLen",
20664             "headerLen"
20665           ]
20666         }
20667       }
20668     }
20669   },
20670   {
20671     "Name": "Subnets",
20672     "Version": 2,
20673     "Schema": {
20674       "type": "object",
20675       "properties": {
20676         "AddSubnets": {
20677           "type": "object",
20678           "properties": {
20679             "Params": {
20680               "$ref": "#/definitions/AddSubnetsParams"
20681             },
20682             "Result": {
20683               "$ref": "#/definitions/ErrorResults"
20684             }
20685           }
20686         },
20687         "AllSpaces": {
20688           "type": "object",
20689           "properties": {
20690             "Result": {
20691               "$ref": "#/definitions/SpaceResults"
20692             }
20693           }
20694         },
20695         "AllZones": {
20696           "type": "object",
20697           "properties": {
20698             "Result": {
20699               "$ref": "#/definitions/ZoneResults"
20700             }
20701           }
20702         },
20703         "ListSubnets": {
20704           "type": "object",
20705           "properties": {
20706             "Params": {
20707               "$ref": "#/definitions/SubnetsFilters"
20708             },
20709             "Result": {
20710               "$ref": "#/definitions/ListSubnetsResults"
20711             }
20712           }
20713         }
20714       },
20715       "definitions": {
20716         "AddSubnetParams": {
20717           "type": "object",
20718           "properties": {
20719             "SpaceTag": {
20720               "type": "string"
20721             },
20722             "SubnetProviderId": {
20723               "type": "string"
20724             },
20725             "SubnetTag": {
20726               "type": "string"
20727             },
20728             "Zones": {
20729               "type": "array",
20730               "items": {
20731                 "type": "string"
20732               }
20733             }
20734           },
20735           "additionalProperties": false,
20736           "required": [
20737             "SpaceTag"
20738           ]
20739         },
20740         "AddSubnetsParams": {
20741           "type": "object",
20742           "properties": {
20743             "Subnets": {
20744               "type": "array",
20745               "items": {
20746                 "$ref": "#/definitions/AddSubnetParams"
20747               }
20748             }
20749           },
20750           "additionalProperties": false,
20751           "required": [
20752             "Subnets"
20753           ]
20754         },
20755         "Error": {
20756           "type": "object",
20757           "properties": {
20758             "Code": {
20759               "type": "string"
20760             },
20761             "Info": {
20762               "$ref": "#/definitions/ErrorInfo"
20763             },
20764             "Message": {
20765               "type": "string"
20766             }
20767           },
20768           "additionalProperties": false,
20769           "required": [
20770             "Message",
20771             "Code"
20772           ]
20773         },
20774         "ErrorInfo": {
20775           "type": "object",
20776           "properties": {
20777             "Macaroon": {
20778               "$ref": "#/definitions/Macaroon"
20779             },
20780             "MacaroonPath": {
20781               "type": "string"
20782             }
20783           },
20784           "additionalProperties": false
20785         },
20786         "ErrorResult": {
20787           "type": "object",
20788           "properties": {
20789             "Error": {
20790               "$ref": "#/definitions/Error"
20791             }
20792           },
20793           "additionalProperties": false,
20794           "required": [
20795             "Error"
20796           ]
20797         },
20798         "ErrorResults": {
20799           "type": "object",
20800           "properties": {
20801             "Results": {
20802               "type": "array",
20803               "items": {
20804                 "$ref": "#/definitions/ErrorResult"
20805               }
20806             }
20807           },
20808           "additionalProperties": false,
20809           "required": [
20810             "Results"
20811           ]
20812         },
20813         "ListSubnetsResults": {
20814           "type": "object",
20815           "properties": {
20816             "Results": {
20817               "type": "array",
20818               "items": {
20819                 "$ref": "#/definitions/Subnet"
20820               }
20821             }
20822           },
20823           "additionalProperties": false,
20824           "required": [
20825             "Results"
20826           ]
20827         },
20828         "Macaroon": {
20829           "type": "object",
20830           "properties": {
20831             "caveats": {
20832               "type": "array",
20833               "items": {
20834                 "$ref": "#/definitions/caveat"
20835               }
20836             },
20837             "data": {
20838               "type": "array",
20839               "items": {
20840                 "type": "integer"
20841               }
20842             },
20843             "id": {
20844               "$ref": "#/definitions/packet"
20845             },
20846             "location": {
20847               "$ref": "#/definitions/packet"
20848             },
20849             "sig": {
20850               "type": "array",
20851               "items": {
20852                 "type": "integer"
20853               }
20854             }
20855           },
20856           "additionalProperties": false,
20857           "required": [
20858             "data",
20859             "location",
20860             "id",
20861             "caveats",
20862             "sig"
20863           ]
20864         },
20865         "SpaceResult": {
20866           "type": "object",
20867           "properties": {
20868             "Error": {
20869               "$ref": "#/definitions/Error"
20870             },
20871             "Tag": {
20872               "type": "string"
20873             }
20874           },
20875           "additionalProperties": false,
20876           "required": [
20877             "Error",
20878             "Tag"
20879           ]
20880         },
20881         "SpaceResults": {
20882           "type": "object",
20883           "properties": {
20884             "Results": {
20885               "type": "array",
20886               "items": {
20887                 "$ref": "#/definitions/SpaceResult"
20888               }
20889             }
20890           },
20891           "additionalProperties": false,
20892           "required": [
20893             "Results"
20894           ]
20895         },
20896         "Subnet": {
20897           "type": "object",
20898           "properties": {
20899             "CIDR": {
20900               "type": "string"
20901             },
20902             "Life": {
20903               "type": "string"
20904             },
20905             "ProviderId": {
20906               "type": "string"
20907             },
20908             "SpaceTag": {
20909               "type": "string"
20910             },
20911             "StaticRangeHighIP": {
20912               "type": "array",
20913               "items": {
20914                 "type": "integer"
20915               }
20916             },
20917             "StaticRangeLowIP": {
20918               "type": "array",
20919               "items": {
20920                 "type": "integer"
20921               }
20922             },
20923             "Status": {
20924               "type": "string"
20925             },
20926             "VLANTag": {
20927               "type": "integer"
20928             },
20929             "Zones": {
20930               "type": "array",
20931               "items": {
20932                 "type": "string"
20933               }
20934             }
20935           },
20936           "additionalProperties": false,
20937           "required": [
20938             "CIDR",
20939             "VLANTag",
20940             "Life",
20941             "SpaceTag",
20942             "Zones"
20943           ]
20944         },
20945         "SubnetsFilters": {
20946           "type": "object",
20947           "properties": {
20948             "SpaceTag": {
20949               "type": "string"
20950             },
20951             "Zone": {
20952               "type": "string"
20953             }
20954           },
20955           "additionalProperties": false
20956         },
20957         "ZoneResult": {
20958           "type": "object",
20959           "properties": {
20960             "Available": {
20961               "type": "boolean"
20962             },
20963             "Error": {
20964               "$ref": "#/definitions/Error"
20965             },
20966             "Name": {
20967               "type": "string"
20968             }
20969           },
20970           "additionalProperties": false,
20971           "required": [
20972             "Error",
20973             "Name",
20974             "Available"
20975           ]
20976         },
20977         "ZoneResults": {
20978           "type": "object",
20979           "properties": {
20980             "Results": {
20981               "type": "array",
20982               "items": {
20983                 "$ref": "#/definitions/ZoneResult"
20984               }
20985             }
20986           },
20987           "additionalProperties": false,
20988           "required": [
20989             "Results"
20990           ]
20991         },
20992         "caveat": {
20993           "type": "object",
20994           "properties": {
20995             "caveatId": {
20996               "$ref": "#/definitions/packet"
20997             },
20998             "location": {
20999               "$ref": "#/definitions/packet"
21000             },
21001             "verificationId": {
21002               "$ref": "#/definitions/packet"
21003             }
21004           },
21005           "additionalProperties": false,
21006           "required": [
21007             "location",
21008             "caveatId",
21009             "verificationId"
21010           ]
21011         },
21012         "packet": {
21013           "type": "object",
21014           "properties": {
21015             "headerLen": {
21016               "type": "integer"
21017             },
21018             "start": {
21019               "type": "integer"
21020             },
21021             "totalLen": {
21022               "type": "integer"
21023             }
21024           },
21025           "additionalProperties": false,
21026           "required": [
21027             "start",
21028             "totalLen",
21029             "headerLen"
21030           ]
21031         }
21032       }
21033     }
21034   },
21035   {
21036     "Name": "Undertaker",
21037     "Version": 1,
21038     "Schema": {
21039       "type": "object",
21040       "properties": {
21041         "ModelConfig": {
21042           "type": "object",
21043           "properties": {
21044             "Result": {
21045               "$ref": "#/definitions/ModelConfigResult"
21046             }
21047           }
21048         },
21049         "ModelInfo": {
21050           "type": "object",
21051           "properties": {
21052             "Result": {
21053               "$ref": "#/definitions/UndertakerModelInfoResult"
21054             }
21055           }
21056         },
21057         "ProcessDyingModel": {
21058           "type": "object"
21059         },
21060         "RemoveModel": {
21061           "type": "object"
21062         },
21063         "SetStatus": {
21064           "type": "object",
21065           "properties": {
21066             "Params": {
21067               "$ref": "#/definitions/SetStatus"
21068             },
21069             "Result": {
21070               "$ref": "#/definitions/ErrorResults"
21071             }
21072           }
21073         },
21074         "UpdateStatus": {
21075           "type": "object",
21076           "properties": {
21077             "Params": {
21078               "$ref": "#/definitions/SetStatus"
21079             },
21080             "Result": {
21081               "$ref": "#/definitions/ErrorResults"
21082             }
21083           }
21084         },
21085         "WatchModelResources": {
21086           "type": "object",
21087           "properties": {
21088             "Result": {
21089               "$ref": "#/definitions/NotifyWatchResults"
21090             }
21091           }
21092         }
21093       },
21094       "definitions": {
21095         "EntityStatusArgs": {
21096           "type": "object",
21097           "properties": {
21098             "Data": {
21099               "type": "object",
21100               "patternProperties": {
21101                 ".*": {
21102                   "type": "object",
21103                   "additionalProperties": true
21104                 }
21105               }
21106             },
21107             "Info": {
21108               "type": "string"
21109             },
21110             "Status": {
21111               "type": "string"
21112             },
21113             "Tag": {
21114               "type": "string"
21115             }
21116           },
21117           "additionalProperties": false,
21118           "required": [
21119             "Tag",
21120             "Status",
21121             "Info",
21122             "Data"
21123           ]
21124         },
21125         "Error": {
21126           "type": "object",
21127           "properties": {
21128             "Code": {
21129               "type": "string"
21130             },
21131             "Info": {
21132               "$ref": "#/definitions/ErrorInfo"
21133             },
21134             "Message": {
21135               "type": "string"
21136             }
21137           },
21138           "additionalProperties": false,
21139           "required": [
21140             "Message",
21141             "Code"
21142           ]
21143         },
21144         "ErrorInfo": {
21145           "type": "object",
21146           "properties": {
21147             "Macaroon": {
21148               "$ref": "#/definitions/Macaroon"
21149             },
21150             "MacaroonPath": {
21151               "type": "string"
21152             }
21153           },
21154           "additionalProperties": false
21155         },
21156         "ErrorResult": {
21157           "type": "object",
21158           "properties": {
21159             "Error": {
21160               "$ref": "#/definitions/Error"
21161             }
21162           },
21163           "additionalProperties": false,
21164           "required": [
21165             "Error"
21166           ]
21167         },
21168         "ErrorResults": {
21169           "type": "object",
21170           "properties": {
21171             "Results": {
21172               "type": "array",
21173               "items": {
21174                 "$ref": "#/definitions/ErrorResult"
21175               }
21176             }
21177           },
21178           "additionalProperties": false,
21179           "required": [
21180             "Results"
21181           ]
21182         },
21183         "Macaroon": {
21184           "type": "object",
21185           "properties": {
21186             "caveats": {
21187               "type": "array",
21188               "items": {
21189                 "$ref": "#/definitions/caveat"
21190               }
21191             },
21192             "data": {
21193               "type": "array",
21194               "items": {
21195                 "type": "integer"
21196               }
21197             },
21198             "id": {
21199               "$ref": "#/definitions/packet"
21200             },
21201             "location": {
21202               "$ref": "#/definitions/packet"
21203             },
21204             "sig": {
21205               "type": "array",
21206               "items": {
21207                 "type": "integer"
21208               }
21209             }
21210           },
21211           "additionalProperties": false,
21212           "required": [
21213             "data",
21214             "location",
21215             "id",
21216             "caveats",
21217             "sig"
21218           ]
21219         },
21220         "ModelConfigResult": {
21221           "type": "object",
21222           "properties": {
21223             "Config": {
21224               "type": "object",
21225               "patternProperties": {
21226                 ".*": {
21227                   "type": "object",
21228                   "additionalProperties": true
21229                 }
21230               }
21231             }
21232           },
21233           "additionalProperties": false,
21234           "required": [
21235             "Config"
21236           ]
21237         },
21238         "NotifyWatchResult": {
21239           "type": "object",
21240           "properties": {
21241             "Error": {
21242               "$ref": "#/definitions/Error"
21243             },
21244             "NotifyWatcherId": {
21245               "type": "string"
21246             }
21247           },
21248           "additionalProperties": false,
21249           "required": [
21250             "NotifyWatcherId",
21251             "Error"
21252           ]
21253         },
21254         "NotifyWatchResults": {
21255           "type": "object",
21256           "properties": {
21257             "Results": {
21258               "type": "array",
21259               "items": {
21260                 "$ref": "#/definitions/NotifyWatchResult"
21261               }
21262             }
21263           },
21264           "additionalProperties": false,
21265           "required": [
21266             "Results"
21267           ]
21268         },
21269         "SetStatus": {
21270           "type": "object",
21271           "properties": {
21272             "Entities": {
21273               "type": "array",
21274               "items": {
21275                 "$ref": "#/definitions/EntityStatusArgs"
21276               }
21277             }
21278           },
21279           "additionalProperties": false,
21280           "required": [
21281             "Entities"
21282           ]
21283         },
21284         "UndertakerModelInfo": {
21285           "type": "object",
21286           "properties": {
21287             "GlobalName": {
21288               "type": "string"
21289             },
21290             "IsSystem": {
21291               "type": "boolean"
21292             },
21293             "Life": {
21294               "type": "string"
21295             },
21296             "Name": {
21297               "type": "string"
21298             },
21299             "UUID": {
21300               "type": "string"
21301             }
21302           },
21303           "additionalProperties": false,
21304           "required": [
21305             "UUID",
21306             "Name",
21307             "GlobalName",
21308             "IsSystem",
21309             "Life"
21310           ]
21311         },
21312         "UndertakerModelInfoResult": {
21313           "type": "object",
21314           "properties": {
21315             "Error": {
21316               "$ref": "#/definitions/Error"
21317             },
21318             "Result": {
21319               "$ref": "#/definitions/UndertakerModelInfo"
21320             }
21321           },
21322           "additionalProperties": false,
21323           "required": [
21324             "Error",
21325             "Result"
21326           ]
21327         },
21328         "caveat": {
21329           "type": "object",
21330           "properties": {
21331             "caveatId": {
21332               "$ref": "#/definitions/packet"
21333             },
21334             "location": {
21335               "$ref": "#/definitions/packet"
21336             },
21337             "verificationId": {
21338               "$ref": "#/definitions/packet"
21339             }
21340           },
21341           "additionalProperties": false,
21342           "required": [
21343             "location",
21344             "caveatId",
21345             "verificationId"
21346           ]
21347         },
21348         "packet": {
21349           "type": "object",
21350           "properties": {
21351             "headerLen": {
21352               "type": "integer"
21353             },
21354             "start": {
21355               "type": "integer"
21356             },
21357             "totalLen": {
21358               "type": "integer"
21359             }
21360           },
21361           "additionalProperties": false,
21362           "required": [
21363             "start",
21364             "totalLen",
21365             "headerLen"
21366           ]
21367         }
21368       }
21369     }
21370   },
21371   {
21372     "Name": "UnitAssigner",
21373     "Version": 1,
21374     "Schema": {
21375       "type": "object",
21376       "properties": {
21377         "AssignUnits": {
21378           "type": "object",
21379           "properties": {
21380             "Params": {
21381               "$ref": "#/definitions/Entities"
21382             },
21383             "Result": {
21384               "$ref": "#/definitions/ErrorResults"
21385             }
21386           }
21387         },
21388         "SetAgentStatus": {
21389           "type": "object",
21390           "properties": {
21391             "Params": {
21392               "$ref": "#/definitions/SetStatus"
21393             },
21394             "Result": {
21395               "$ref": "#/definitions/ErrorResults"
21396             }
21397           }
21398         },
21399         "WatchUnitAssignments": {
21400           "type": "object",
21401           "properties": {
21402             "Result": {
21403               "$ref": "#/definitions/StringsWatchResult"
21404             }
21405           }
21406         }
21407       },
21408       "definitions": {
21409         "Entities": {
21410           "type": "object",
21411           "properties": {
21412             "Entities": {
21413               "type": "array",
21414               "items": {
21415                 "$ref": "#/definitions/Entity"
21416               }
21417             }
21418           },
21419           "additionalProperties": false,
21420           "required": [
21421             "Entities"
21422           ]
21423         },
21424         "Entity": {
21425           "type": "object",
21426           "properties": {
21427             "Tag": {
21428               "type": "string"
21429             }
21430           },
21431           "additionalProperties": false,
21432           "required": [
21433             "Tag"
21434           ]
21435         },
21436         "EntityStatusArgs": {
21437           "type": "object",
21438           "properties": {
21439             "Data": {
21440               "type": "object",
21441               "patternProperties": {
21442                 ".*": {
21443                   "type": "object",
21444                   "additionalProperties": true
21445                 }
21446               }
21447             },
21448             "Info": {
21449               "type": "string"
21450             },
21451             "Status": {
21452               "type": "string"
21453             },
21454             "Tag": {
21455               "type": "string"
21456             }
21457           },
21458           "additionalProperties": false,
21459           "required": [
21460             "Tag",
21461             "Status",
21462             "Info",
21463             "Data"
21464           ]
21465         },
21466         "Error": {
21467           "type": "object",
21468           "properties": {
21469             "Code": {
21470               "type": "string"
21471             },
21472             "Info": {
21473               "$ref": "#/definitions/ErrorInfo"
21474             },
21475             "Message": {
21476               "type": "string"
21477             }
21478           },
21479           "additionalProperties": false,
21480           "required": [
21481             "Message",
21482             "Code"
21483           ]
21484         },
21485         "ErrorInfo": {
21486           "type": "object",
21487           "properties": {
21488             "Macaroon": {
21489               "$ref": "#/definitions/Macaroon"
21490             },
21491             "MacaroonPath": {
21492               "type": "string"
21493             }
21494           },
21495           "additionalProperties": false
21496         },
21497         "ErrorResult": {
21498           "type": "object",
21499           "properties": {
21500             "Error": {
21501               "$ref": "#/definitions/Error"
21502             }
21503           },
21504           "additionalProperties": false,
21505           "required": [
21506             "Error"
21507           ]
21508         },
21509         "ErrorResults": {
21510           "type": "object",
21511           "properties": {
21512             "Results": {
21513               "type": "array",
21514               "items": {
21515                 "$ref": "#/definitions/ErrorResult"
21516               }
21517             }
21518           },
21519           "additionalProperties": false,
21520           "required": [
21521             "Results"
21522           ]
21523         },
21524         "Macaroon": {
21525           "type": "object",
21526           "properties": {
21527             "caveats": {
21528               "type": "array",
21529               "items": {
21530                 "$ref": "#/definitions/caveat"
21531               }
21532             },
21533             "data": {
21534               "type": "array",
21535               "items": {
21536                 "type": "integer"
21537               }
21538             },
21539             "id": {
21540               "$ref": "#/definitions/packet"
21541             },
21542             "location": {
21543               "$ref": "#/definitions/packet"
21544             },
21545             "sig": {
21546               "type": "array",
21547               "items": {
21548                 "type": "integer"
21549               }
21550             }
21551           },
21552           "additionalProperties": false,
21553           "required": [
21554             "data",
21555             "location",
21556             "id",
21557             "caveats",
21558             "sig"
21559           ]
21560         },
21561         "SetStatus": {
21562           "type": "object",
21563           "properties": {
21564             "Entities": {
21565               "type": "array",
21566               "items": {
21567                 "$ref": "#/definitions/EntityStatusArgs"
21568               }
21569             }
21570           },
21571           "additionalProperties": false,
21572           "required": [
21573             "Entities"
21574           ]
21575         },
21576         "StringsWatchResult": {
21577           "type": "object",
21578           "properties": {
21579             "Changes": {
21580               "type": "array",
21581               "items": {
21582                 "type": "string"
21583               }
21584             },
21585             "Error": {
21586               "$ref": "#/definitions/Error"
21587             },
21588             "StringsWatcherId": {
21589               "type": "string"
21590             }
21591           },
21592           "additionalProperties": false,
21593           "required": [
21594             "StringsWatcherId",
21595             "Changes",
21596             "Error"
21597           ]
21598         },
21599         "caveat": {
21600           "type": "object",
21601           "properties": {
21602             "caveatId": {
21603               "$ref": "#/definitions/packet"
21604             },
21605             "location": {
21606               "$ref": "#/definitions/packet"
21607             },
21608             "verificationId": {
21609               "$ref": "#/definitions/packet"
21610             }
21611           },
21612           "additionalProperties": false,
21613           "required": [
21614             "location",
21615             "caveatId",
21616             "verificationId"
21617           ]
21618         },
21619         "packet": {
21620           "type": "object",
21621           "properties": {
21622             "headerLen": {
21623               "type": "integer"
21624             },
21625             "start": {
21626               "type": "integer"
21627             },
21628             "totalLen": {
21629               "type": "integer"
21630             }
21631           },
21632           "additionalProperties": false,
21633           "required": [
21634             "start",
21635             "totalLen",
21636             "headerLen"
21637           ]
21638         }
21639       }
21640     }
21641   },
21642   {
21643     "Name": "Uniter",
21644     "Version": 4,
21645     "Schema": {
21646       "type": "object",
21647       "properties": {
21648         "APIAddresses": {
21649           "type": "object",
21650           "properties": {
21651             "Result": {
21652               "$ref": "#/definitions/StringsResult"
21653             }
21654           }
21655         },
21656         "APIHostPorts": {
21657           "type": "object",
21658           "properties": {
21659             "Result": {
21660               "$ref": "#/definitions/APIHostPortsResult"
21661             }
21662           }
21663         },
21664         "Actions": {
21665           "type": "object",
21666           "properties": {
21667             "Params": {
21668               "$ref": "#/definitions/Entities"
21669             },
21670             "Result": {
21671               "$ref": "#/definitions/ActionResults"
21672             }
21673           }
21674         },
21675         "AddMetricBatches": {
21676           "type": "object",
21677           "properties": {
21678             "Params": {
21679               "$ref": "#/definitions/MetricBatchParams"
21680             },
21681             "Result": {
21682               "$ref": "#/definitions/ErrorResults"
21683             }
21684           }
21685         },
21686         "AddUnitStorage": {
21687           "type": "object",
21688           "properties": {
21689             "Params": {
21690               "$ref": "#/definitions/StoragesAddParams"
21691             },
21692             "Result": {
21693               "$ref": "#/definitions/ErrorResults"
21694             }
21695           }
21696         },
21697         "AllMachinePorts": {
21698           "type": "object",
21699           "properties": {
21700             "Params": {
21701               "$ref": "#/definitions/Entities"
21702             },
21703             "Result": {
21704               "$ref": "#/definitions/MachinePortsResults"
21705             }
21706           }
21707         },
21708         "ApplicationOwner": {
21709           "type": "object",
21710           "properties": {
21711             "Params": {
21712               "$ref": "#/definitions/Entities"
21713             },
21714             "Result": {
21715               "$ref": "#/definitions/StringResults"
21716             }
21717           }
21718         },
21719         "ApplicationStatus": {
21720           "type": "object",
21721           "properties": {
21722             "Params": {
21723               "$ref": "#/definitions/Entities"
21724             },
21725             "Result": {
21726               "$ref": "#/definitions/ApplicationStatusResults"
21727             }
21728           }
21729         },
21730         "AssignedMachine": {
21731           "type": "object",
21732           "properties": {
21733             "Params": {
21734               "$ref": "#/definitions/Entities"
21735             },
21736             "Result": {
21737               "$ref": "#/definitions/StringResults"
21738             }
21739           }
21740         },
21741         "AvailabilityZone": {
21742           "type": "object",
21743           "properties": {
21744             "Params": {
21745               "$ref": "#/definitions/Entities"
21746             },
21747             "Result": {
21748               "$ref": "#/definitions/StringResults"
21749             }
21750           }
21751         },
21752         "BeginActions": {
21753           "type": "object",
21754           "properties": {
21755             "Params": {
21756               "$ref": "#/definitions/Entities"
21757             },
21758             "Result": {
21759               "$ref": "#/definitions/ErrorResults"
21760             }
21761           }
21762         },
21763         "CACert": {
21764           "type": "object",
21765           "properties": {
21766             "Result": {
21767               "$ref": "#/definitions/BytesResult"
21768             }
21769           }
21770         },
21771         "CharmArchiveSha256": {
21772           "type": "object",
21773           "properties": {
21774             "Params": {
21775               "$ref": "#/definitions/CharmURLs"
21776             },
21777             "Result": {
21778               "$ref": "#/definitions/StringResults"
21779             }
21780           }
21781         },
21782         "CharmModifiedVersion": {
21783           "type": "object",
21784           "properties": {
21785             "Params": {
21786               "$ref": "#/definitions/Entities"
21787             },
21788             "Result": {
21789               "$ref": "#/definitions/IntResults"
21790             }
21791           }
21792         },
21793         "CharmURL": {
21794           "type": "object",
21795           "properties": {
21796             "Params": {
21797               "$ref": "#/definitions/Entities"
21798             },
21799             "Result": {
21800               "$ref": "#/definitions/StringBoolResults"
21801             }
21802           }
21803         },
21804         "ClearResolved": {
21805           "type": "object",
21806           "properties": {
21807             "Params": {
21808               "$ref": "#/definitions/Entities"
21809             },
21810             "Result": {
21811               "$ref": "#/definitions/ErrorResults"
21812             }
21813           }
21814         },
21815         "ClosePorts": {
21816           "type": "object",
21817           "properties": {
21818             "Params": {
21819               "$ref": "#/definitions/EntitiesPortRanges"
21820             },
21821             "Result": {
21822               "$ref": "#/definitions/ErrorResults"
21823             }
21824           }
21825         },
21826         "ConfigSettings": {
21827           "type": "object",
21828           "properties": {
21829             "Params": {
21830               "$ref": "#/definitions/Entities"
21831             },
21832             "Result": {
21833               "$ref": "#/definitions/ConfigSettingsResults"
21834             }
21835           }
21836         },
21837         "CurrentModel": {
21838           "type": "object",
21839           "properties": {
21840             "Result": {
21841               "$ref": "#/definitions/ModelResult"
21842             }
21843           }
21844         },
21845         "Destroy": {
21846           "type": "object",
21847           "properties": {
21848             "Params": {
21849               "$ref": "#/definitions/Entities"
21850             },
21851             "Result": {
21852               "$ref": "#/definitions/ErrorResults"
21853             }
21854           }
21855         },
21856         "DestroyAllSubordinates": {
21857           "type": "object",
21858           "properties": {
21859             "Params": {
21860               "$ref": "#/definitions/Entities"
21861             },
21862             "Result": {
21863               "$ref": "#/definitions/ErrorResults"
21864             }
21865           }
21866         },
21867         "DestroyUnitStorageAttachments": {
21868           "type": "object",
21869           "properties": {
21870             "Params": {
21871               "$ref": "#/definitions/Entities"
21872             },
21873             "Result": {
21874               "$ref": "#/definitions/ErrorResults"
21875             }
21876           }
21877         },
21878         "EnsureDead": {
21879           "type": "object",
21880           "properties": {
21881             "Params": {
21882               "$ref": "#/definitions/Entities"
21883             },
21884             "Result": {
21885               "$ref": "#/definitions/ErrorResults"
21886             }
21887           }
21888         },
21889         "EnterScope": {
21890           "type": "object",
21891           "properties": {
21892             "Params": {
21893               "$ref": "#/definitions/RelationUnits"
21894             },
21895             "Result": {
21896               "$ref": "#/definitions/ErrorResults"
21897             }
21898           }
21899         },
21900         "FinishActions": {
21901           "type": "object",
21902           "properties": {
21903             "Params": {
21904               "$ref": "#/definitions/ActionExecutionResults"
21905             },
21906             "Result": {
21907               "$ref": "#/definitions/ErrorResults"
21908             }
21909           }
21910         },
21911         "GetMeterStatus": {
21912           "type": "object",
21913           "properties": {
21914             "Params": {
21915               "$ref": "#/definitions/Entities"
21916             },
21917             "Result": {
21918               "$ref": "#/definitions/MeterStatusResults"
21919             }
21920           }
21921         },
21922         "GetPrincipal": {
21923           "type": "object",
21924           "properties": {
21925             "Params": {
21926               "$ref": "#/definitions/Entities"
21927             },
21928             "Result": {
21929               "$ref": "#/definitions/StringBoolResults"
21930             }
21931           }
21932         },
21933         "HasSubordinates": {
21934           "type": "object",
21935           "properties": {
21936             "Params": {
21937               "$ref": "#/definitions/Entities"
21938             },
21939             "Result": {
21940               "$ref": "#/definitions/BoolResults"
21941             }
21942           }
21943         },
21944         "JoinedRelations": {
21945           "type": "object",
21946           "properties": {
21947             "Params": {
21948               "$ref": "#/definitions/Entities"
21949             },
21950             "Result": {
21951               "$ref": "#/definitions/StringsResults"
21952             }
21953           }
21954         },
21955         "LeaveScope": {
21956           "type": "object",
21957           "properties": {
21958             "Params": {
21959               "$ref": "#/definitions/RelationUnits"
21960             },
21961             "Result": {
21962               "$ref": "#/definitions/ErrorResults"
21963             }
21964           }
21965         },
21966         "Life": {
21967           "type": "object",
21968           "properties": {
21969             "Params": {
21970               "$ref": "#/definitions/Entities"
21971             },
21972             "Result": {
21973               "$ref": "#/definitions/LifeResults"
21974             }
21975           }
21976         },
21977         "Merge": {
21978           "type": "object",
21979           "properties": {
21980             "Params": {
21981               "$ref": "#/definitions/MergeLeadershipSettingsBulkParams"
21982             },
21983             "Result": {
21984               "$ref": "#/definitions/ErrorResults"
21985             }
21986           }
21987         },
21988         "ModelConfig": {
21989           "type": "object",
21990           "properties": {
21991             "Result": {
21992               "$ref": "#/definitions/ModelConfigResult"
21993             }
21994           }
21995         },
21996         "ModelUUID": {
21997           "type": "object",
21998           "properties": {
21999             "Result": {
22000               "$ref": "#/definitions/StringResult"
22001             }
22002           }
22003         },
22004         "NetworkConfig": {
22005           "type": "object",
22006           "properties": {
22007             "Params": {
22008               "$ref": "#/definitions/UnitsNetworkConfig"
22009             },
22010             "Result": {
22011               "$ref": "#/definitions/UnitNetworkConfigResults"
22012             }
22013           }
22014         },
22015         "OpenPorts": {
22016           "type": "object",
22017           "properties": {
22018             "Params": {
22019               "$ref": "#/definitions/EntitiesPortRanges"
22020             },
22021             "Result": {
22022               "$ref": "#/definitions/ErrorResults"
22023             }
22024           }
22025         },
22026         "PrivateAddress": {
22027           "type": "object",
22028           "properties": {
22029             "Params": {
22030               "$ref": "#/definitions/Entities"
22031             },
22032             "Result": {
22033               "$ref": "#/definitions/StringResults"
22034             }
22035           }
22036         },
22037         "ProviderType": {
22038           "type": "object",
22039           "properties": {
22040             "Result": {
22041               "$ref": "#/definitions/StringResult"
22042             }
22043           }
22044         },
22045         "PublicAddress": {
22046           "type": "object",
22047           "properties": {
22048             "Params": {
22049               "$ref": "#/definitions/Entities"
22050             },
22051             "Result": {
22052               "$ref": "#/definitions/StringResults"
22053             }
22054           }
22055         },
22056         "Read": {
22057           "type": "object",
22058           "properties": {
22059             "Params": {
22060               "$ref": "#/definitions/Entities"
22061             },
22062             "Result": {
22063               "$ref": "#/definitions/GetLeadershipSettingsBulkResults"
22064             }
22065           }
22066         },
22067         "ReadRemoteSettings": {
22068           "type": "object",
22069           "properties": {
22070             "Params": {
22071               "$ref": "#/definitions/RelationUnitPairs"
22072             },
22073             "Result": {
22074               "$ref": "#/definitions/SettingsResults"
22075             }
22076           }
22077         },
22078         "ReadSettings": {
22079           "type": "object",
22080           "properties": {
22081             "Params": {
22082               "$ref": "#/definitions/RelationUnits"
22083             },
22084             "Result": {
22085               "$ref": "#/definitions/SettingsResults"
22086             }
22087           }
22088         },
22089         "Relation": {
22090           "type": "object",
22091           "properties": {
22092             "Params": {
22093               "$ref": "#/definitions/RelationUnits"
22094             },
22095             "Result": {
22096               "$ref": "#/definitions/RelationResults"
22097             }
22098           }
22099         },
22100         "RelationById": {
22101           "type": "object",
22102           "properties": {
22103             "Params": {
22104               "$ref": "#/definitions/RelationIds"
22105             },
22106             "Result": {
22107               "$ref": "#/definitions/RelationResults"
22108             }
22109           }
22110         },
22111         "RemoveStorageAttachments": {
22112           "type": "object",
22113           "properties": {
22114             "Params": {
22115               "$ref": "#/definitions/StorageAttachmentIds"
22116             },
22117             "Result": {
22118               "$ref": "#/definitions/ErrorResults"
22119             }
22120           }
22121         },
22122         "RequestReboot": {
22123           "type": "object",
22124           "properties": {
22125             "Params": {
22126               "$ref": "#/definitions/Entities"
22127             },
22128             "Result": {
22129               "$ref": "#/definitions/ErrorResults"
22130             }
22131           }
22132         },
22133         "Resolved": {
22134           "type": "object",
22135           "properties": {
22136             "Params": {
22137               "$ref": "#/definitions/Entities"
22138             },
22139             "Result": {
22140               "$ref": "#/definitions/ResolvedModeResults"
22141             }
22142           }
22143         },
22144         "SetAgentStatus": {
22145           "type": "object",
22146           "properties": {
22147             "Params": {
22148               "$ref": "#/definitions/SetStatus"
22149             },
22150             "Result": {
22151               "$ref": "#/definitions/ErrorResults"
22152             }
22153           }
22154         },
22155         "SetApplicationStatus": {
22156           "type": "object",
22157           "properties": {
22158             "Params": {
22159               "$ref": "#/definitions/SetStatus"
22160             },
22161             "Result": {
22162               "$ref": "#/definitions/ErrorResults"
22163             }
22164           }
22165         },
22166         "SetCharmURL": {
22167           "type": "object",
22168           "properties": {
22169             "Params": {
22170               "$ref": "#/definitions/EntitiesCharmURL"
22171             },
22172             "Result": {
22173               "$ref": "#/definitions/ErrorResults"
22174             }
22175           }
22176         },
22177         "SetStatus": {
22178           "type": "object",
22179           "properties": {
22180             "Params": {
22181               "$ref": "#/definitions/SetStatus"
22182             },
22183             "Result": {
22184               "$ref": "#/definitions/ErrorResults"
22185             }
22186           }
22187         },
22188         "SetUnitStatus": {
22189           "type": "object",
22190           "properties": {
22191             "Params": {
22192               "$ref": "#/definitions/SetStatus"
22193             },
22194             "Result": {
22195               "$ref": "#/definitions/ErrorResults"
22196             }
22197           }
22198         },
22199         "StorageAttachmentLife": {
22200           "type": "object",
22201           "properties": {
22202             "Params": {
22203               "$ref": "#/definitions/StorageAttachmentIds"
22204             },
22205             "Result": {
22206               "$ref": "#/definitions/LifeResults"
22207             }
22208           }
22209         },
22210         "StorageAttachments": {
22211           "type": "object",
22212           "properties": {
22213             "Params": {
22214               "$ref": "#/definitions/StorageAttachmentIds"
22215             },
22216             "Result": {
22217               "$ref": "#/definitions/StorageAttachmentResults"
22218             }
22219           }
22220         },
22221         "UnitStatus": {
22222           "type": "object",
22223           "properties": {
22224             "Params": {
22225               "$ref": "#/definitions/Entities"
22226             },
22227             "Result": {
22228               "$ref": "#/definitions/StatusResults"
22229             }
22230           }
22231         },
22232         "UnitStorageAttachments": {
22233           "type": "object",
22234           "properties": {
22235             "Params": {
22236               "$ref": "#/definitions/Entities"
22237             },
22238             "Result": {
22239               "$ref": "#/definitions/StorageAttachmentIdsResults"
22240             }
22241           }
22242         },
22243         "UpdateSettings": {
22244           "type": "object",
22245           "properties": {
22246             "Params": {
22247               "$ref": "#/definitions/RelationUnitsSettings"
22248             },
22249             "Result": {
22250               "$ref": "#/definitions/ErrorResults"
22251             }
22252           }
22253         },
22254         "Watch": {
22255           "type": "object",
22256           "properties": {
22257             "Params": {
22258               "$ref": "#/definitions/Entities"
22259             },
22260             "Result": {
22261               "$ref": "#/definitions/NotifyWatchResults"
22262             }
22263           }
22264         },
22265         "WatchAPIHostPorts": {
22266           "type": "object",
22267           "properties": {
22268             "Result": {
22269               "$ref": "#/definitions/NotifyWatchResult"
22270             }
22271           }
22272         },
22273         "WatchActionNotifications": {
22274           "type": "object",
22275           "properties": {
22276             "Params": {
22277               "$ref": "#/definitions/Entities"
22278             },
22279             "Result": {
22280               "$ref": "#/definitions/StringsWatchResults"
22281             }
22282           }
22283         },
22284         "WatchApplicationRelations": {
22285           "type": "object",
22286           "properties": {
22287             "Params": {
22288               "$ref": "#/definitions/Entities"
22289             },
22290             "Result": {
22291               "$ref": "#/definitions/StringsWatchResults"
22292             }
22293           }
22294         },
22295         "WatchConfigSettings": {
22296           "type": "object",
22297           "properties": {
22298             "Params": {
22299               "$ref": "#/definitions/Entities"
22300             },
22301             "Result": {
22302               "$ref": "#/definitions/NotifyWatchResults"
22303             }
22304           }
22305         },
22306         "WatchForModelConfigChanges": {
22307           "type": "object",
22308           "properties": {
22309             "Result": {
22310               "$ref": "#/definitions/NotifyWatchResult"
22311             }
22312           }
22313         },
22314         "WatchLeadershipSettings": {
22315           "type": "object",
22316           "properties": {
22317             "Params": {
22318               "$ref": "#/definitions/Entities"
22319             },
22320             "Result": {
22321               "$ref": "#/definitions/NotifyWatchResults"
22322             }
22323           }
22324         },
22325         "WatchMeterStatus": {
22326           "type": "object",
22327           "properties": {
22328             "Params": {
22329               "$ref": "#/definitions/Entities"
22330             },
22331             "Result": {
22332               "$ref": "#/definitions/NotifyWatchResults"
22333             }
22334           }
22335         },
22336         "WatchRelationUnits": {
22337           "type": "object",
22338           "properties": {
22339             "Params": {
22340               "$ref": "#/definitions/RelationUnits"
22341             },
22342             "Result": {
22343               "$ref": "#/definitions/RelationUnitsWatchResults"
22344             }
22345           }
22346         },
22347         "WatchStorageAttachments": {
22348           "type": "object",
22349           "properties": {
22350             "Params": {
22351               "$ref": "#/definitions/StorageAttachmentIds"
22352             },
22353             "Result": {
22354               "$ref": "#/definitions/NotifyWatchResults"
22355             }
22356           }
22357         },
22358         "WatchUnitAddresses": {
22359           "type": "object",
22360           "properties": {
22361             "Params": {
22362               "$ref": "#/definitions/Entities"
22363             },
22364             "Result": {
22365               "$ref": "#/definitions/NotifyWatchResults"
22366             }
22367           }
22368         },
22369         "WatchUnitStorageAttachments": {
22370           "type": "object",
22371           "properties": {
22372             "Params": {
22373               "$ref": "#/definitions/Entities"
22374             },
22375             "Result": {
22376               "$ref": "#/definitions/StringsWatchResults"
22377             }
22378           }
22379         }
22380       },
22381       "definitions": {
22382         "APIHostPortsResult": {
22383           "type": "object",
22384           "properties": {
22385             "Servers": {
22386               "type": "array",
22387               "items": {
22388                 "type": "array",
22389                 "items": {
22390                   "$ref": "#/definitions/HostPort"
22391                 }
22392               }
22393             }
22394           },
22395           "additionalProperties": false,
22396           "required": [
22397             "Servers"
22398           ]
22399         },
22400         "Action": {
22401           "type": "object",
22402           "properties": {
22403             "name": {
22404               "type": "string"
22405             },
22406             "parameters": {
22407               "type": "object",
22408               "patternProperties": {
22409                 ".*": {
22410                   "type": "object",
22411                   "additionalProperties": true
22412                 }
22413               }
22414             },
22415             "receiver": {
22416               "type": "string"
22417             },
22418             "tag": {
22419               "type": "string"
22420             }
22421           },
22422           "additionalProperties": false,
22423           "required": [
22424             "tag",
22425             "receiver",
22426             "name"
22427           ]
22428         },
22429         "ActionExecutionResult": {
22430           "type": "object",
22431           "properties": {
22432             "actiontag": {
22433               "type": "string"
22434             },
22435             "message": {
22436               "type": "string"
22437             },
22438             "results": {
22439               "type": "object",
22440               "patternProperties": {
22441                 ".*": {
22442                   "type": "object",
22443                   "additionalProperties": true
22444                 }
22445               }
22446             },
22447             "status": {
22448               "type": "string"
22449             }
22450           },
22451           "additionalProperties": false,
22452           "required": [
22453             "actiontag",
22454             "status"
22455           ]
22456         },
22457         "ActionExecutionResults": {
22458           "type": "object",
22459           "properties": {
22460             "results": {
22461               "type": "array",
22462               "items": {
22463                 "$ref": "#/definitions/ActionExecutionResult"
22464               }
22465             }
22466           },
22467           "additionalProperties": false
22468         },
22469         "ActionResult": {
22470           "type": "object",
22471           "properties": {
22472             "action": {
22473               "$ref": "#/definitions/Action"
22474             },
22475             "completed": {
22476               "type": "string",
22477               "format": "date-time"
22478             },
22479             "enqueued": {
22480               "type": "string",
22481               "format": "date-time"
22482             },
22483             "error": {
22484               "$ref": "#/definitions/Error"
22485             },
22486             "message": {
22487               "type": "string"
22488             },
22489             "output": {
22490               "type": "object",
22491               "patternProperties": {
22492                 ".*": {
22493                   "type": "object",
22494                   "additionalProperties": true
22495                 }
22496               }
22497             },
22498             "started": {
22499               "type": "string",
22500               "format": "date-time"
22501             },
22502             "status": {
22503               "type": "string"
22504             }
22505           },
22506           "additionalProperties": false
22507         },
22508         "ActionResults": {
22509           "type": "object",
22510           "properties": {
22511             "results": {
22512               "type": "array",
22513               "items": {
22514                 "$ref": "#/definitions/ActionResult"
22515               }
22516             }
22517           },
22518           "additionalProperties": false
22519         },
22520         "Address": {
22521           "type": "object",
22522           "properties": {
22523             "Scope": {
22524               "type": "string"
22525             },
22526             "SpaceName": {
22527               "type": "string"
22528             },
22529             "Type": {
22530               "type": "string"
22531             },
22532             "Value": {
22533               "type": "string"
22534             }
22535           },
22536           "additionalProperties": false,
22537           "required": [
22538             "Value",
22539             "Type",
22540             "Scope"
22541           ]
22542         },
22543         "ApplicationStatusResult": {
22544           "type": "object",
22545           "properties": {
22546             "Application": {
22547               "$ref": "#/definitions/StatusResult"
22548             },
22549             "Error": {
22550               "$ref": "#/definitions/Error"
22551             },
22552             "Units": {
22553               "type": "object",
22554               "patternProperties": {
22555                 ".*": {
22556                   "$ref": "#/definitions/StatusResult"
22557                 }
22558               }
22559             }
22560           },
22561           "additionalProperties": false,
22562           "required": [
22563             "Application",
22564             "Units",
22565             "Error"
22566           ]
22567         },
22568         "ApplicationStatusResults": {
22569           "type": "object",
22570           "properties": {
22571             "Results": {
22572               "type": "array",
22573               "items": {
22574                 "$ref": "#/definitions/ApplicationStatusResult"
22575               }
22576             }
22577           },
22578           "additionalProperties": false,
22579           "required": [
22580             "Results"
22581           ]
22582         },
22583         "BoolResult": {
22584           "type": "object",
22585           "properties": {
22586             "Error": {
22587               "$ref": "#/definitions/Error"
22588             },
22589             "Result": {
22590               "type": "boolean"
22591             }
22592           },
22593           "additionalProperties": false,
22594           "required": [
22595             "Error",
22596             "Result"
22597           ]
22598         },
22599         "BoolResults": {
22600           "type": "object",
22601           "properties": {
22602             "Results": {
22603               "type": "array",
22604               "items": {
22605                 "$ref": "#/definitions/BoolResult"
22606               }
22607             }
22608           },
22609           "additionalProperties": false,
22610           "required": [
22611             "Results"
22612           ]
22613         },
22614         "BytesResult": {
22615           "type": "object",
22616           "properties": {
22617             "Result": {
22618               "type": "array",
22619               "items": {
22620                 "type": "integer"
22621               }
22622             }
22623           },
22624           "additionalProperties": false,
22625           "required": [
22626             "Result"
22627           ]
22628         },
22629         "CharmURL": {
22630           "type": "object",
22631           "properties": {
22632             "URL": {
22633               "type": "string"
22634             }
22635           },
22636           "additionalProperties": false,
22637           "required": [
22638             "URL"
22639           ]
22640         },
22641         "CharmURLs": {
22642           "type": "object",
22643           "properties": {
22644             "URLs": {
22645               "type": "array",
22646               "items": {
22647                 "$ref": "#/definitions/CharmURL"
22648               }
22649             }
22650           },
22651           "additionalProperties": false,
22652           "required": [
22653             "URLs"
22654           ]
22655         },
22656         "ConfigSettingsResult": {
22657           "type": "object",
22658           "properties": {
22659             "Error": {
22660               "$ref": "#/definitions/Error"
22661             },
22662             "Settings": {
22663               "type": "object",
22664               "patternProperties": {
22665                 ".*": {
22666                   "type": "object",
22667                   "additionalProperties": true
22668                 }
22669               }
22670             }
22671           },
22672           "additionalProperties": false,
22673           "required": [
22674             "Error",
22675             "Settings"
22676           ]
22677         },
22678         "ConfigSettingsResults": {
22679           "type": "object",
22680           "properties": {
22681             "Results": {
22682               "type": "array",
22683               "items": {
22684                 "$ref": "#/definitions/ConfigSettingsResult"
22685               }
22686             }
22687           },
22688           "additionalProperties": false,
22689           "required": [
22690             "Results"
22691           ]
22692         },
22693         "Endpoint": {
22694           "type": "object",
22695           "properties": {
22696             "ApplicationName": {
22697               "type": "string"
22698             },
22699             "Relation": {
22700               "$ref": "#/definitions/Relation"
22701             }
22702           },
22703           "additionalProperties": false,
22704           "required": [
22705             "ApplicationName",
22706             "Relation"
22707           ]
22708         },
22709         "Entities": {
22710           "type": "object",
22711           "properties": {
22712             "Entities": {
22713               "type": "array",
22714               "items": {
22715                 "$ref": "#/definitions/Entity"
22716               }
22717             }
22718           },
22719           "additionalProperties": false,
22720           "required": [
22721             "Entities"
22722           ]
22723         },
22724         "EntitiesCharmURL": {
22725           "type": "object",
22726           "properties": {
22727             "Entities": {
22728               "type": "array",
22729               "items": {
22730                 "$ref": "#/definitions/EntityCharmURL"
22731               }
22732             }
22733           },
22734           "additionalProperties": false,
22735           "required": [
22736             "Entities"
22737           ]
22738         },
22739         "EntitiesPortRanges": {
22740           "type": "object",
22741           "properties": {
22742             "Entities": {
22743               "type": "array",
22744               "items": {
22745                 "$ref": "#/definitions/EntityPortRange"
22746               }
22747             }
22748           },
22749           "additionalProperties": false,
22750           "required": [
22751             "Entities"
22752           ]
22753         },
22754         "Entity": {
22755           "type": "object",
22756           "properties": {
22757             "Tag": {
22758               "type": "string"
22759             }
22760           },
22761           "additionalProperties": false,
22762           "required": [
22763             "Tag"
22764           ]
22765         },
22766         "EntityCharmURL": {
22767           "type": "object",
22768           "properties": {
22769             "CharmURL": {
22770               "type": "string"
22771             },
22772             "Tag": {
22773               "type": "string"
22774             }
22775           },
22776           "additionalProperties": false,
22777           "required": [
22778             "Tag",
22779             "CharmURL"
22780           ]
22781         },
22782         "EntityPortRange": {
22783           "type": "object",
22784           "properties": {
22785             "FromPort": {
22786               "type": "integer"
22787             },
22788             "Protocol": {
22789               "type": "string"
22790             },
22791             "Tag": {
22792               "type": "string"
22793             },
22794             "ToPort": {
22795               "type": "integer"
22796             }
22797           },
22798           "additionalProperties": false,
22799           "required": [
22800             "Tag",
22801             "Protocol",
22802             "FromPort",
22803             "ToPort"
22804           ]
22805         },
22806         "EntityStatusArgs": {
22807           "type": "object",
22808           "properties": {
22809             "Data": {
22810               "type": "object",
22811               "patternProperties": {
22812                 ".*": {
22813                   "type": "object",
22814                   "additionalProperties": true
22815                 }
22816               }
22817             },
22818             "Info": {
22819               "type": "string"
22820             },
22821             "Status": {
22822               "type": "string"
22823             },
22824             "Tag": {
22825               "type": "string"
22826             }
22827           },
22828           "additionalProperties": false,
22829           "required": [
22830             "Tag",
22831             "Status",
22832             "Info",
22833             "Data"
22834           ]
22835         },
22836         "Error": {
22837           "type": "object",
22838           "properties": {
22839             "Code": {
22840               "type": "string"
22841             },
22842             "Info": {
22843               "$ref": "#/definitions/ErrorInfo"
22844             },
22845             "Message": {
22846               "type": "string"
22847             }
22848           },
22849           "additionalProperties": false,
22850           "required": [
22851             "Message",
22852             "Code"
22853           ]
22854         },
22855         "ErrorInfo": {
22856           "type": "object",
22857           "properties": {
22858             "Macaroon": {
22859               "$ref": "#/definitions/Macaroon"
22860             },
22861             "MacaroonPath": {
22862               "type": "string"
22863             }
22864           },
22865           "additionalProperties": false
22866         },
22867         "ErrorResult": {
22868           "type": "object",
22869           "properties": {
22870             "Error": {
22871               "$ref": "#/definitions/Error"
22872             }
22873           },
22874           "additionalProperties": false,
22875           "required": [
22876             "Error"
22877           ]
22878         },
22879         "ErrorResults": {
22880           "type": "object",
22881           "properties": {
22882             "Results": {
22883               "type": "array",
22884               "items": {
22885                 "$ref": "#/definitions/ErrorResult"
22886               }
22887             }
22888           },
22889           "additionalProperties": false,
22890           "required": [
22891             "Results"
22892           ]
22893         },
22894         "GetLeadershipSettingsBulkResults": {
22895           "type": "object",
22896           "properties": {
22897             "Results": {
22898               "type": "array",
22899               "items": {
22900                 "$ref": "#/definitions/GetLeadershipSettingsResult"
22901               }
22902             }
22903           },
22904           "additionalProperties": false,
22905           "required": [
22906             "Results"
22907           ]
22908         },
22909         "GetLeadershipSettingsResult": {
22910           "type": "object",
22911           "properties": {
22912             "Error": {
22913               "$ref": "#/definitions/Error"
22914             },
22915             "Settings": {
22916               "type": "object",
22917               "patternProperties": {
22918                 ".*": {
22919                   "type": "string"
22920                 }
22921               }
22922             }
22923           },
22924           "additionalProperties": false,
22925           "required": [
22926             "Settings",
22927             "Error"
22928           ]
22929         },
22930         "HostPort": {
22931           "type": "object",
22932           "properties": {
22933             "Address": {
22934               "$ref": "#/definitions/Address"
22935             },
22936             "Port": {
22937               "type": "integer"
22938             }
22939           },
22940           "additionalProperties": false,
22941           "required": [
22942             "Address",
22943             "Port"
22944           ]
22945         },
22946         "IntResult": {
22947           "type": "object",
22948           "properties": {
22949             "Error": {
22950               "$ref": "#/definitions/Error"
22951             },
22952             "Result": {
22953               "type": "integer"
22954             }
22955           },
22956           "additionalProperties": false,
22957           "required": [
22958             "Error",
22959             "Result"
22960           ]
22961         },
22962         "IntResults": {
22963           "type": "object",
22964           "properties": {
22965             "Results": {
22966               "type": "array",
22967               "items": {
22968                 "$ref": "#/definitions/IntResult"
22969               }
22970             }
22971           },
22972           "additionalProperties": false,
22973           "required": [
22974             "Results"
22975           ]
22976         },
22977         "LifeResult": {
22978           "type": "object",
22979           "properties": {
22980             "Error": {
22981               "$ref": "#/definitions/Error"
22982             },
22983             "Life": {
22984               "type": "string"
22985             }
22986           },
22987           "additionalProperties": false,
22988           "required": [
22989             "Life",
22990             "Error"
22991           ]
22992         },
22993         "LifeResults": {
22994           "type": "object",
22995           "properties": {
22996             "Results": {
22997               "type": "array",
22998               "items": {
22999                 "$ref": "#/definitions/LifeResult"
23000               }
23001             }
23002           },
23003           "additionalProperties": false,
23004           "required": [
23005             "Results"
23006           ]
23007         },
23008         "Macaroon": {
23009           "type": "object",
23010           "properties": {
23011             "caveats": {
23012               "type": "array",
23013               "items": {
23014                 "$ref": "#/definitions/caveat"
23015               }
23016             },
23017             "data": {
23018               "type": "array",
23019               "items": {
23020                 "type": "integer"
23021               }
23022             },
23023             "id": {
23024               "$ref": "#/definitions/packet"
23025             },
23026             "location": {
23027               "$ref": "#/definitions/packet"
23028             },
23029             "sig": {
23030               "type": "array",
23031               "items": {
23032                 "type": "integer"
23033               }
23034             }
23035           },
23036           "additionalProperties": false,
23037           "required": [
23038             "data",
23039             "location",
23040             "id",
23041             "caveats",
23042             "sig"
23043           ]
23044         },
23045         "MachinePortRange": {
23046           "type": "object",
23047           "properties": {
23048             "PortRange": {
23049               "$ref": "#/definitions/PortRange"
23050             },
23051             "RelationTag": {
23052               "type": "string"
23053             },
23054             "UnitTag": {
23055               "type": "string"
23056             }
23057           },
23058           "additionalProperties": false,
23059           "required": [
23060             "UnitTag",
23061             "RelationTag",
23062             "PortRange"
23063           ]
23064         },
23065         "MachinePortsResult": {
23066           "type": "object",
23067           "properties": {
23068             "Error": {
23069               "$ref": "#/definitions/Error"
23070             },
23071             "Ports": {
23072               "type": "array",
23073               "items": {
23074                 "$ref": "#/definitions/MachinePortRange"
23075               }
23076             }
23077           },
23078           "additionalProperties": false,
23079           "required": [
23080             "Error",
23081             "Ports"
23082           ]
23083         },
23084         "MachinePortsResults": {
23085           "type": "object",
23086           "properties": {
23087             "Results": {
23088               "type": "array",
23089               "items": {
23090                 "$ref": "#/definitions/MachinePortsResult"
23091               }
23092             }
23093           },
23094           "additionalProperties": false,
23095           "required": [
23096             "Results"
23097           ]
23098         },
23099         "MergeLeadershipSettingsBulkParams": {
23100           "type": "object",
23101           "properties": {
23102             "Params": {
23103               "type": "array",
23104               "items": {
23105                 "$ref": "#/definitions/MergeLeadershipSettingsParam"
23106               }
23107             }
23108           },
23109           "additionalProperties": false,
23110           "required": [
23111             "Params"
23112           ]
23113         },
23114         "MergeLeadershipSettingsParam": {
23115           "type": "object",
23116           "properties": {
23117             "ApplicationTag": {
23118               "type": "string"
23119             },
23120             "Settings": {
23121               "type": "object",
23122               "patternProperties": {
23123                 ".*": {
23124                   "type": "string"
23125                 }
23126               }
23127             }
23128           },
23129           "additionalProperties": false,
23130           "required": [
23131             "ApplicationTag",
23132             "Settings"
23133           ]
23134         },
23135         "MeterStatusResult": {
23136           "type": "object",
23137           "properties": {
23138             "Code": {
23139               "type": "string"
23140             },
23141             "Error": {
23142               "$ref": "#/definitions/Error"
23143             },
23144             "Info": {
23145               "type": "string"
23146             }
23147           },
23148           "additionalProperties": false,
23149           "required": [
23150             "Code",
23151             "Info",
23152             "Error"
23153           ]
23154         },
23155         "MeterStatusResults": {
23156           "type": "object",
23157           "properties": {
23158             "Results": {
23159               "type": "array",
23160               "items": {
23161                 "$ref": "#/definitions/MeterStatusResult"
23162               }
23163             }
23164           },
23165           "additionalProperties": false,
23166           "required": [
23167             "Results"
23168           ]
23169         },
23170         "Metric": {
23171           "type": "object",
23172           "properties": {
23173             "Key": {
23174               "type": "string"
23175             },
23176             "Time": {
23177               "type": "string",
23178               "format": "date-time"
23179             },
23180             "Value": {
23181               "type": "string"
23182             }
23183           },
23184           "additionalProperties": false,
23185           "required": [
23186             "Key",
23187             "Value",
23188             "Time"
23189           ]
23190         },
23191         "MetricBatch": {
23192           "type": "object",
23193           "properties": {
23194             "CharmURL": {
23195               "type": "string"
23196             },
23197             "Created": {
23198               "type": "string",
23199               "format": "date-time"
23200             },
23201             "Metrics": {
23202               "type": "array",
23203               "items": {
23204                 "$ref": "#/definitions/Metric"
23205               }
23206             },
23207             "UUID": {
23208               "type": "string"
23209             }
23210           },
23211           "additionalProperties": false,
23212           "required": [
23213             "UUID",
23214             "CharmURL",
23215             "Created",
23216             "Metrics"
23217           ]
23218         },
23219         "MetricBatchParam": {
23220           "type": "object",
23221           "properties": {
23222             "Batch": {
23223               "$ref": "#/definitions/MetricBatch"
23224             },
23225             "Tag": {
23226               "type": "string"
23227             }
23228           },
23229           "additionalProperties": false,
23230           "required": [
23231             "Tag",
23232             "Batch"
23233           ]
23234         },
23235         "MetricBatchParams": {
23236           "type": "object",
23237           "properties": {
23238             "Batches": {
23239               "type": "array",
23240               "items": {
23241                 "$ref": "#/definitions/MetricBatchParam"
23242               }
23243             }
23244           },
23245           "additionalProperties": false,
23246           "required": [
23247             "Batches"
23248           ]
23249         },
23250         "ModelConfigResult": {
23251           "type": "object",
23252           "properties": {
23253             "Config": {
23254               "type": "object",
23255               "patternProperties": {
23256                 ".*": {
23257                   "type": "object",
23258                   "additionalProperties": true
23259                 }
23260               }
23261             }
23262           },
23263           "additionalProperties": false,
23264           "required": [
23265             "Config"
23266           ]
23267         },
23268         "ModelResult": {
23269           "type": "object",
23270           "properties": {
23271             "Error": {
23272               "$ref": "#/definitions/Error"
23273             },
23274             "Name": {
23275               "type": "string"
23276             },
23277             "UUID": {
23278               "type": "string"
23279             }
23280           },
23281           "additionalProperties": false,
23282           "required": [
23283             "Error",
23284             "Name",
23285             "UUID"
23286           ]
23287         },
23288         "NetworkConfig": {
23289           "type": "object",
23290           "properties": {
23291             "Address": {
23292               "type": "string"
23293             },
23294             "CIDR": {
23295               "type": "string"
23296             },
23297             "ConfigType": {
23298               "type": "string"
23299             },
23300             "DNSSearchDomains": {
23301               "type": "array",
23302               "items": {
23303                 "type": "string"
23304               }
23305             },
23306             "DNSServers": {
23307               "type": "array",
23308               "items": {
23309                 "type": "string"
23310               }
23311             },
23312             "DeviceIndex": {
23313               "type": "integer"
23314             },
23315             "Disabled": {
23316               "type": "boolean"
23317             },
23318             "GatewayAddress": {
23319               "type": "string"
23320             },
23321             "InterfaceName": {
23322               "type": "string"
23323             },
23324             "InterfaceType": {
23325               "type": "string"
23326             },
23327             "MACAddress": {
23328               "type": "string"
23329             },
23330             "MTU": {
23331               "type": "integer"
23332             },
23333             "NoAutoStart": {
23334               "type": "boolean"
23335             },
23336             "ParentInterfaceName": {
23337               "type": "string"
23338             },
23339             "ProviderAddressId": {
23340               "type": "string"
23341             },
23342             "ProviderId": {
23343               "type": "string"
23344             },
23345             "ProviderSpaceId": {
23346               "type": "string"
23347             },
23348             "ProviderSubnetId": {
23349               "type": "string"
23350             },
23351             "ProviderVLANId": {
23352               "type": "string"
23353             },
23354             "VLANTag": {
23355               "type": "integer"
23356             }
23357           },
23358           "additionalProperties": false,
23359           "required": [
23360             "DeviceIndex",
23361             "MACAddress",
23362             "CIDR",
23363             "MTU",
23364             "ProviderId",
23365             "ProviderSubnetId",
23366             "ProviderSpaceId",
23367             "ProviderAddressId",
23368             "ProviderVLANId",
23369             "VLANTag",
23370             "InterfaceName",
23371             "ParentInterfaceName",
23372             "InterfaceType",
23373             "Disabled"
23374           ]
23375         },
23376         "NotifyWatchResult": {
23377           "type": "object",
23378           "properties": {
23379             "Error": {
23380               "$ref": "#/definitions/Error"
23381             },
23382             "NotifyWatcherId": {
23383               "type": "string"
23384             }
23385           },
23386           "additionalProperties": false,
23387           "required": [
23388             "NotifyWatcherId",
23389             "Error"
23390           ]
23391         },
23392         "NotifyWatchResults": {
23393           "type": "object",
23394           "properties": {
23395             "Results": {
23396               "type": "array",
23397               "items": {
23398                 "$ref": "#/definitions/NotifyWatchResult"
23399               }
23400             }
23401           },
23402           "additionalProperties": false,
23403           "required": [
23404             "Results"
23405           ]
23406         },
23407         "PortRange": {
23408           "type": "object",
23409           "properties": {
23410             "FromPort": {
23411               "type": "integer"
23412             },
23413             "Protocol": {
23414               "type": "string"
23415             },
23416             "ToPort": {
23417               "type": "integer"
23418             }
23419           },
23420           "additionalProperties": false,
23421           "required": [
23422             "FromPort",
23423             "ToPort",
23424             "Protocol"
23425           ]
23426         },
23427         "Relation": {
23428           "type": "object",
23429           "properties": {
23430             "Interface": {
23431               "type": "string"
23432             },
23433             "Limit": {
23434               "type": "integer"
23435             },
23436             "Name": {
23437               "type": "string"
23438             },
23439             "Optional": {
23440               "type": "boolean"
23441             },
23442             "Role": {
23443               "type": "string"
23444             },
23445             "Scope": {
23446               "type": "string"
23447             }
23448           },
23449           "additionalProperties": false,
23450           "required": [
23451             "Name",
23452             "Role",
23453             "Interface",
23454             "Optional",
23455             "Limit",
23456             "Scope"
23457           ]
23458         },
23459         "RelationIds": {
23460           "type": "object",
23461           "properties": {
23462             "RelationIds": {
23463               "type": "array",
23464               "items": {
23465                 "type": "integer"
23466               }
23467             }
23468           },
23469           "additionalProperties": false,
23470           "required": [
23471             "RelationIds"
23472           ]
23473         },
23474         "RelationResult": {
23475           "type": "object",
23476           "properties": {
23477             "Endpoint": {
23478               "$ref": "#/definitions/Endpoint"
23479             },
23480             "Error": {
23481               "$ref": "#/definitions/Error"
23482             },
23483             "Id": {
23484               "type": "integer"
23485             },
23486             "Key": {
23487               "type": "string"
23488             },
23489             "Life": {
23490               "type": "string"
23491             }
23492           },
23493           "additionalProperties": false,
23494           "required": [
23495             "Error",
23496             "Life",
23497             "Id",
23498             "Key",
23499             "Endpoint"
23500           ]
23501         },
23502         "RelationResults": {
23503           "type": "object",
23504           "properties": {
23505             "Results": {
23506               "type": "array",
23507               "items": {
23508                 "$ref": "#/definitions/RelationResult"
23509               }
23510             }
23511           },
23512           "additionalProperties": false,
23513           "required": [
23514             "Results"
23515           ]
23516         },
23517         "RelationUnit": {
23518           "type": "object",
23519           "properties": {
23520             "Relation": {
23521               "type": "string"
23522             },
23523             "Unit": {
23524               "type": "string"
23525             }
23526           },
23527           "additionalProperties": false,
23528           "required": [
23529             "Relation",
23530             "Unit"
23531           ]
23532         },
23533         "RelationUnitPair": {
23534           "type": "object",
23535           "properties": {
23536             "LocalUnit": {
23537               "type": "string"
23538             },
23539             "Relation": {
23540               "type": "string"
23541             },
23542             "RemoteUnit": {
23543               "type": "string"
23544             }
23545           },
23546           "additionalProperties": false,
23547           "required": [
23548             "Relation",
23549             "LocalUnit",
23550             "RemoteUnit"
23551           ]
23552         },
23553         "RelationUnitPairs": {
23554           "type": "object",
23555           "properties": {
23556             "RelationUnitPairs": {
23557               "type": "array",
23558               "items": {
23559                 "$ref": "#/definitions/RelationUnitPair"
23560               }
23561             }
23562           },
23563           "additionalProperties": false,
23564           "required": [
23565             "RelationUnitPairs"
23566           ]
23567         },
23568         "RelationUnitSettings": {
23569           "type": "object",
23570           "properties": {
23571             "Relation": {
23572               "type": "string"
23573             },
23574             "Settings": {
23575               "type": "object",
23576               "patternProperties": {
23577                 ".*": {
23578                   "type": "string"
23579                 }
23580               }
23581             },
23582             "Unit": {
23583               "type": "string"
23584             }
23585           },
23586           "additionalProperties": false,
23587           "required": [
23588             "Relation",
23589             "Unit",
23590             "Settings"
23591           ]
23592         },
23593         "RelationUnits": {
23594           "type": "object",
23595           "properties": {
23596             "RelationUnits": {
23597               "type": "array",
23598               "items": {
23599                 "$ref": "#/definitions/RelationUnit"
23600               }
23601             }
23602           },
23603           "additionalProperties": false,
23604           "required": [
23605             "RelationUnits"
23606           ]
23607         },
23608         "RelationUnitsChange": {
23609           "type": "object",
23610           "properties": {
23611             "Changed": {
23612               "type": "object",
23613               "patternProperties": {
23614                 ".*": {
23615                   "$ref": "#/definitions/UnitSettings"
23616                 }
23617               }
23618             },
23619             "Departed": {
23620               "type": "array",
23621               "items": {
23622                 "type": "string"
23623               }
23624             }
23625           },
23626           "additionalProperties": false,
23627           "required": [
23628             "Changed",
23629             "Departed"
23630           ]
23631         },
23632         "RelationUnitsSettings": {
23633           "type": "object",
23634           "properties": {
23635             "RelationUnits": {
23636               "type": "array",
23637               "items": {
23638                 "$ref": "#/definitions/RelationUnitSettings"
23639               }
23640             }
23641           },
23642           "additionalProperties": false,
23643           "required": [
23644             "RelationUnits"
23645           ]
23646         },
23647         "RelationUnitsWatchResult": {
23648           "type": "object",
23649           "properties": {
23650             "Changes": {
23651               "$ref": "#/definitions/RelationUnitsChange"
23652             },
23653             "Error": {
23654               "$ref": "#/definitions/Error"
23655             },
23656             "RelationUnitsWatcherId": {
23657               "type": "string"
23658             }
23659           },
23660           "additionalProperties": false,
23661           "required": [
23662             "RelationUnitsWatcherId",
23663             "Changes",
23664             "Error"
23665           ]
23666         },
23667         "RelationUnitsWatchResults": {
23668           "type": "object",
23669           "properties": {
23670             "Results": {
23671               "type": "array",
23672               "items": {
23673                 "$ref": "#/definitions/RelationUnitsWatchResult"
23674               }
23675             }
23676           },
23677           "additionalProperties": false,
23678           "required": [
23679             "Results"
23680           ]
23681         },
23682         "ResolvedModeResult": {
23683           "type": "object",
23684           "properties": {
23685             "Error": {
23686               "$ref": "#/definitions/Error"
23687             },
23688             "Mode": {
23689               "type": "string"
23690             }
23691           },
23692           "additionalProperties": false,
23693           "required": [
23694             "Error",
23695             "Mode"
23696           ]
23697         },
23698         "ResolvedModeResults": {
23699           "type": "object",
23700           "properties": {
23701             "Results": {
23702               "type": "array",
23703               "items": {
23704                 "$ref": "#/definitions/ResolvedModeResult"
23705               }
23706             }
23707           },
23708           "additionalProperties": false,
23709           "required": [
23710             "Results"
23711           ]
23712         },
23713         "SetStatus": {
23714           "type": "object",
23715           "properties": {
23716             "Entities": {
23717               "type": "array",
23718               "items": {
23719                 "$ref": "#/definitions/EntityStatusArgs"
23720               }
23721             }
23722           },
23723           "additionalProperties": false,
23724           "required": [
23725             "Entities"
23726           ]
23727         },
23728         "SettingsResult": {
23729           "type": "object",
23730           "properties": {
23731             "Error": {
23732               "$ref": "#/definitions/Error"
23733             },
23734             "Settings": {
23735               "type": "object",
23736               "patternProperties": {
23737                 ".*": {
23738                   "type": "string"
23739                 }
23740               }
23741             }
23742           },
23743           "additionalProperties": false,
23744           "required": [
23745             "Error",
23746             "Settings"
23747           ]
23748         },
23749         "SettingsResults": {
23750           "type": "object",
23751           "properties": {
23752             "Results": {
23753               "type": "array",
23754               "items": {
23755                 "$ref": "#/definitions/SettingsResult"
23756               }
23757             }
23758           },
23759           "additionalProperties": false,
23760           "required": [
23761             "Results"
23762           ]
23763         },
23764         "StatusResult": {
23765           "type": "object",
23766           "properties": {
23767             "Data": {
23768               "type": "object",
23769               "patternProperties": {
23770                 ".*": {
23771                   "type": "object",
23772                   "additionalProperties": true
23773                 }
23774               }
23775             },
23776             "Error": {
23777               "$ref": "#/definitions/Error"
23778             },
23779             "Id": {
23780               "type": "string"
23781             },
23782             "Info": {
23783               "type": "string"
23784             },
23785             "Life": {
23786               "type": "string"
23787             },
23788             "Since": {
23789               "type": "string",
23790               "format": "date-time"
23791             },
23792             "Status": {
23793               "type": "string"
23794             }
23795           },
23796           "additionalProperties": false,
23797           "required": [
23798             "Error",
23799             "Id",
23800             "Life",
23801             "Status",
23802             "Info",
23803             "Data",
23804             "Since"
23805           ]
23806         },
23807         "StatusResults": {
23808           "type": "object",
23809           "properties": {
23810             "Results": {
23811               "type": "array",
23812               "items": {
23813                 "$ref": "#/definitions/StatusResult"
23814               }
23815             }
23816           },
23817           "additionalProperties": false,
23818           "required": [
23819             "Results"
23820           ]
23821         },
23822         "StorageAddParams": {
23823           "type": "object",
23824           "properties": {
23825             "StorageName": {
23826               "type": "string"
23827             },
23828             "storage": {
23829               "$ref": "#/definitions/StorageConstraints"
23830             },
23831             "unit": {
23832               "type": "string"
23833             }
23834           },
23835           "additionalProperties": false,
23836           "required": [
23837             "unit",
23838             "StorageName",
23839             "storage"
23840           ]
23841         },
23842         "StorageAttachment": {
23843           "type": "object",
23844           "properties": {
23845             "Kind": {
23846               "type": "integer"
23847             },
23848             "Life": {
23849               "type": "string"
23850             },
23851             "Location": {
23852               "type": "string"
23853             },
23854             "OwnerTag": {
23855               "type": "string"
23856             },
23857             "StorageTag": {
23858               "type": "string"
23859             },
23860             "UnitTag": {
23861               "type": "string"
23862             }
23863           },
23864           "additionalProperties": false,
23865           "required": [
23866             "StorageTag",
23867             "OwnerTag",
23868             "UnitTag",
23869             "Kind",
23870             "Location",
23871             "Life"
23872           ]
23873         },
23874         "StorageAttachmentId": {
23875           "type": "object",
23876           "properties": {
23877             "storagetag": {
23878               "type": "string"
23879             },
23880             "unittag": {
23881               "type": "string"
23882             }
23883           },
23884           "additionalProperties": false,
23885           "required": [
23886             "storagetag",
23887             "unittag"
23888           ]
23889         },
23890         "StorageAttachmentIds": {
23891           "type": "object",
23892           "properties": {
23893             "ids": {
23894               "type": "array",
23895               "items": {
23896                 "$ref": "#/definitions/StorageAttachmentId"
23897               }
23898             }
23899           },
23900           "additionalProperties": false,
23901           "required": [
23902             "ids"
23903           ]
23904         },
23905         "StorageAttachmentIdsResult": {
23906           "type": "object",
23907           "properties": {
23908             "error": {
23909               "$ref": "#/definitions/Error"
23910             },
23911             "result": {
23912               "$ref": "#/definitions/StorageAttachmentIds"
23913             }
23914           },
23915           "additionalProperties": false,
23916           "required": [
23917             "result"
23918           ]
23919         },
23920         "StorageAttachmentIdsResults": {
23921           "type": "object",
23922           "properties": {
23923             "results": {
23924               "type": "array",
23925               "items": {
23926                 "$ref": "#/definitions/StorageAttachmentIdsResult"
23927               }
23928             }
23929           },
23930           "additionalProperties": false
23931         },
23932         "StorageAttachmentResult": {
23933           "type": "object",
23934           "properties": {
23935             "error": {
23936               "$ref": "#/definitions/Error"
23937             },
23938             "result": {
23939               "$ref": "#/definitions/StorageAttachment"
23940             }
23941           },
23942           "additionalProperties": false,
23943           "required": [
23944             "result"
23945           ]
23946         },
23947         "StorageAttachmentResults": {
23948           "type": "object",
23949           "properties": {
23950             "results": {
23951               "type": "array",
23952               "items": {
23953                 "$ref": "#/definitions/StorageAttachmentResult"
23954               }
23955             }
23956           },
23957           "additionalProperties": false
23958         },
23959         "StorageConstraints": {
23960           "type": "object",
23961           "properties": {
23962             "Count": {
23963               "type": "integer"
23964             },
23965             "Pool": {
23966               "type": "string"
23967             },
23968             "Size": {
23969               "type": "integer"
23970             }
23971           },
23972           "additionalProperties": false,
23973           "required": [
23974             "Pool",
23975             "Size",
23976             "Count"
23977           ]
23978         },
23979         "StoragesAddParams": {
23980           "type": "object",
23981           "properties": {
23982             "storages": {
23983               "type": "array",
23984               "items": {
23985                 "$ref": "#/definitions/StorageAddParams"
23986               }
23987             }
23988           },
23989           "additionalProperties": false,
23990           "required": [
23991             "storages"
23992           ]
23993         },
23994         "StringBoolResult": {
23995           "type": "object",
23996           "properties": {
23997             "Error": {
23998               "$ref": "#/definitions/Error"
23999             },
24000             "Ok": {
24001               "type": "boolean"
24002             },
24003             "Result": {
24004               "type": "string"
24005             }
24006           },
24007           "additionalProperties": false,
24008           "required": [
24009             "Error",
24010             "Result",
24011             "Ok"
24012           ]
24013         },
24014         "StringBoolResults": {
24015           "type": "object",
24016           "properties": {
24017             "Results": {
24018               "type": "array",
24019               "items": {
24020                 "$ref": "#/definitions/StringBoolResult"
24021               }
24022             }
24023           },
24024           "additionalProperties": false,
24025           "required": [
24026             "Results"
24027           ]
24028         },
24029         "StringResult": {
24030           "type": "object",
24031           "properties": {
24032             "Error": {
24033               "$ref": "#/definitions/Error"
24034             },
24035             "Result": {
24036               "type": "string"
24037             }
24038           },
24039           "additionalProperties": false,
24040           "required": [
24041             "Error",
24042             "Result"
24043           ]
24044         },
24045         "StringResults": {
24046           "type": "object",
24047           "properties": {
24048             "Results": {
24049               "type": "array",
24050               "items": {
24051                 "$ref": "#/definitions/StringResult"
24052               }
24053             }
24054           },
24055           "additionalProperties": false,
24056           "required": [
24057             "Results"
24058           ]
24059         },
24060         "StringsResult": {
24061           "type": "object",
24062           "properties": {
24063             "Error": {
24064               "$ref": "#/definitions/Error"
24065             },
24066             "Result": {
24067               "type": "array",
24068               "items": {
24069                 "type": "string"
24070               }
24071             }
24072           },
24073           "additionalProperties": false,
24074           "required": [
24075             "Error",
24076             "Result"
24077           ]
24078         },
24079         "StringsResults": {
24080           "type": "object",
24081           "properties": {
24082             "Results": {
24083               "type": "array",
24084               "items": {
24085                 "$ref": "#/definitions/StringsResult"
24086               }
24087             }
24088           },
24089           "additionalProperties": false,
24090           "required": [
24091             "Results"
24092           ]
24093         },
24094         "StringsWatchResult": {
24095           "type": "object",
24096           "properties": {
24097             "Changes": {
24098               "type": "array",
24099               "items": {
24100                 "type": "string"
24101               }
24102             },
24103             "Error": {
24104               "$ref": "#/definitions/Error"
24105             },
24106             "StringsWatcherId": {
24107               "type": "string"
24108             }
24109           },
24110           "additionalProperties": false,
24111           "required": [
24112             "StringsWatcherId",
24113             "Changes",
24114             "Error"
24115           ]
24116         },
24117         "StringsWatchResults": {
24118           "type": "object",
24119           "properties": {
24120             "Results": {
24121               "type": "array",
24122               "items": {
24123                 "$ref": "#/definitions/StringsWatchResult"
24124               }
24125             }
24126           },
24127           "additionalProperties": false,
24128           "required": [
24129             "Results"
24130           ]
24131         },
24132         "UnitNetworkConfig": {
24133           "type": "object",
24134           "properties": {
24135             "BindingName": {
24136               "type": "string"
24137             },
24138             "UnitTag": {
24139               "type": "string"
24140             }
24141           },
24142           "additionalProperties": false,
24143           "required": [
24144             "UnitTag",
24145             "BindingName"
24146           ]
24147         },
24148         "UnitNetworkConfigResult": {
24149           "type": "object",
24150           "properties": {
24151             "Error": {
24152               "$ref": "#/definitions/Error"
24153             },
24154             "Info": {
24155               "type": "array",
24156               "items": {
24157                 "$ref": "#/definitions/NetworkConfig"
24158               }
24159             }
24160           },
24161           "additionalProperties": false,
24162           "required": [
24163             "Error",
24164             "Info"
24165           ]
24166         },
24167         "UnitNetworkConfigResults": {
24168           "type": "object",
24169           "properties": {
24170             "Results": {
24171               "type": "array",
24172               "items": {
24173                 "$ref": "#/definitions/UnitNetworkConfigResult"
24174               }
24175             }
24176           },
24177           "additionalProperties": false,
24178           "required": [
24179             "Results"
24180           ]
24181         },
24182         "UnitSettings": {
24183           "type": "object",
24184           "properties": {
24185             "Version": {
24186               "type": "integer"
24187             }
24188           },
24189           "additionalProperties": false,
24190           "required": [
24191             "Version"
24192           ]
24193         },
24194         "UnitsNetworkConfig": {
24195           "type": "object",
24196           "properties": {
24197             "Args": {
24198               "type": "array",
24199               "items": {
24200                 "$ref": "#/definitions/UnitNetworkConfig"
24201               }
24202             }
24203           },
24204           "additionalProperties": false,
24205           "required": [
24206             "Args"
24207           ]
24208         },
24209         "caveat": {
24210           "type": "object",
24211           "properties": {
24212             "caveatId": {
24213               "$ref": "#/definitions/packet"
24214             },
24215             "location": {
24216               "$ref": "#/definitions/packet"
24217             },
24218             "verificationId": {
24219               "$ref": "#/definitions/packet"
24220             }
24221           },
24222           "additionalProperties": false,
24223           "required": [
24224             "location",
24225             "caveatId",
24226             "verificationId"
24227           ]
24228         },
24229         "packet": {
24230           "type": "object",
24231           "properties": {
24232             "headerLen": {
24233               "type": "integer"
24234             },
24235             "start": {
24236               "type": "integer"
24237             },
24238             "totalLen": {
24239               "type": "integer"
24240             }
24241           },
24242           "additionalProperties": false,
24243           "required": [
24244             "start",
24245             "totalLen",
24246             "headerLen"
24247           ]
24248         }
24249       }
24250     }
24251   },
24252   {
24253     "Name": "Upgrader",
24254     "Version": 1,
24255     "Schema": {
24256       "type": "object",
24257       "properties": {
24258         "DesiredVersion": {
24259           "type": "object",
24260           "properties": {
24261             "Params": {
24262               "$ref": "#/definitions/Entities"
24263             },
24264             "Result": {
24265               "$ref": "#/definitions/VersionResults"
24266             }
24267           }
24268         },
24269         "SetTools": {
24270           "type": "object",
24271           "properties": {
24272             "Params": {
24273               "$ref": "#/definitions/EntitiesVersion"
24274             },
24275             "Result": {
24276               "$ref": "#/definitions/ErrorResults"
24277             }
24278           }
24279         },
24280         "Tools": {
24281           "type": "object",
24282           "properties": {
24283             "Params": {
24284               "$ref": "#/definitions/Entities"
24285             },
24286             "Result": {
24287               "$ref": "#/definitions/ToolsResults"
24288             }
24289           }
24290         },
24291         "WatchAPIVersion": {
24292           "type": "object",
24293           "properties": {
24294             "Params": {
24295               "$ref": "#/definitions/Entities"
24296             },
24297             "Result": {
24298               "$ref": "#/definitions/NotifyWatchResults"
24299             }
24300           }
24301         }
24302       },
24303       "definitions": {
24304         "Binary": {
24305           "type": "object",
24306           "properties": {
24307             "Arch": {
24308               "type": "string"
24309             },
24310             "Number": {
24311               "$ref": "#/definitions/Number"
24312             },
24313             "Series": {
24314               "type": "string"
24315             }
24316           },
24317           "additionalProperties": false,
24318           "required": [
24319             "Number",
24320             "Series",
24321             "Arch"
24322           ]
24323         },
24324         "Entities": {
24325           "type": "object",
24326           "properties": {
24327             "Entities": {
24328               "type": "array",
24329               "items": {
24330                 "$ref": "#/definitions/Entity"
24331               }
24332             }
24333           },
24334           "additionalProperties": false,
24335           "required": [
24336             "Entities"
24337           ]
24338         },
24339         "EntitiesVersion": {
24340           "type": "object",
24341           "properties": {
24342             "AgentTools": {
24343               "type": "array",
24344               "items": {
24345                 "$ref": "#/definitions/EntityVersion"
24346               }
24347             }
24348           },
24349           "additionalProperties": false,
24350           "required": [
24351             "AgentTools"
24352           ]
24353         },
24354         "Entity": {
24355           "type": "object",
24356           "properties": {
24357             "Tag": {
24358               "type": "string"
24359             }
24360           },
24361           "additionalProperties": false,
24362           "required": [
24363             "Tag"
24364           ]
24365         },
24366         "EntityVersion": {
24367           "type": "object",
24368           "properties": {
24369             "Tag": {
24370               "type": "string"
24371             },
24372             "Tools": {
24373               "$ref": "#/definitions/Version"
24374             }
24375           },
24376           "additionalProperties": false,
24377           "required": [
24378             "Tag",
24379             "Tools"
24380           ]
24381         },
24382         "Error": {
24383           "type": "object",
24384           "properties": {
24385             "Code": {
24386               "type": "string"
24387             },
24388             "Info": {
24389               "$ref": "#/definitions/ErrorInfo"
24390             },
24391             "Message": {
24392               "type": "string"
24393             }
24394           },
24395           "additionalProperties": false,
24396           "required": [
24397             "Message",
24398             "Code"
24399           ]
24400         },
24401         "ErrorInfo": {
24402           "type": "object",
24403           "properties": {
24404             "Macaroon": {
24405               "$ref": "#/definitions/Macaroon"
24406             },
24407             "MacaroonPath": {
24408               "type": "string"
24409             }
24410           },
24411           "additionalProperties": false
24412         },
24413         "ErrorResult": {
24414           "type": "object",
24415           "properties": {
24416             "Error": {
24417               "$ref": "#/definitions/Error"
24418             }
24419           },
24420           "additionalProperties": false,
24421           "required": [
24422             "Error"
24423           ]
24424         },
24425         "ErrorResults": {
24426           "type": "object",
24427           "properties": {
24428             "Results": {
24429               "type": "array",
24430               "items": {
24431                 "$ref": "#/definitions/ErrorResult"
24432               }
24433             }
24434           },
24435           "additionalProperties": false,
24436           "required": [
24437             "Results"
24438           ]
24439         },
24440         "Macaroon": {
24441           "type": "object",
24442           "properties": {
24443             "caveats": {
24444               "type": "array",
24445               "items": {
24446                 "$ref": "#/definitions/caveat"
24447               }
24448             },
24449             "data": {
24450               "type": "array",
24451               "items": {
24452                 "type": "integer"
24453               }
24454             },
24455             "id": {
24456               "$ref": "#/definitions/packet"
24457             },
24458             "location": {
24459               "$ref": "#/definitions/packet"
24460             },
24461             "sig": {
24462               "type": "array",
24463               "items": {
24464                 "type": "integer"
24465               }
24466             }
24467           },
24468           "additionalProperties": false,
24469           "required": [
24470             "data",
24471             "location",
24472             "id",
24473             "caveats",
24474             "sig"
24475           ]
24476         },
24477         "NotifyWatchResult": {
24478           "type": "object",
24479           "properties": {
24480             "Error": {
24481               "$ref": "#/definitions/Error"
24482             },
24483             "NotifyWatcherId": {
24484               "type": "string"
24485             }
24486           },
24487           "additionalProperties": false,
24488           "required": [
24489             "NotifyWatcherId",
24490             "Error"
24491           ]
24492         },
24493         "NotifyWatchResults": {
24494           "type": "object",
24495           "properties": {
24496             "Results": {
24497               "type": "array",
24498               "items": {
24499                 "$ref": "#/definitions/NotifyWatchResult"
24500               }
24501             }
24502           },
24503           "additionalProperties": false,
24504           "required": [
24505             "Results"
24506           ]
24507         },
24508         "Number": {
24509           "type": "object",
24510           "properties": {
24511             "Build": {
24512               "type": "integer"
24513             },
24514             "Major": {
24515               "type": "integer"
24516             },
24517             "Minor": {
24518               "type": "integer"
24519             },
24520             "Patch": {
24521               "type": "integer"
24522             },
24523             "Tag": {
24524               "type": "string"
24525             }
24526           },
24527           "additionalProperties": false,
24528           "required": [
24529             "Major",
24530             "Minor",
24531             "Tag",
24532             "Patch",
24533             "Build"
24534           ]
24535         },
24536         "Tools": {
24537           "type": "object",
24538           "properties": {
24539             "sha256": {
24540               "type": "string"
24541             },
24542             "size": {
24543               "type": "integer"
24544             },
24545             "url": {
24546               "type": "string"
24547             },
24548             "version": {
24549               "$ref": "#/definitions/Binary"
24550             }
24551           },
24552           "additionalProperties": false,
24553           "required": [
24554             "version",
24555             "url",
24556             "size"
24557           ]
24558         },
24559         "ToolsResult": {
24560           "type": "object",
24561           "properties": {
24562             "DisableSSLHostnameVerification": {
24563               "type": "boolean"
24564             },
24565             "Error": {
24566               "$ref": "#/definitions/Error"
24567             },
24568             "ToolsList": {
24569               "type": "array",
24570               "items": {
24571                 "$ref": "#/definitions/Tools"
24572               }
24573             }
24574           },
24575           "additionalProperties": false,
24576           "required": [
24577             "ToolsList",
24578             "DisableSSLHostnameVerification",
24579             "Error"
24580           ]
24581         },
24582         "ToolsResults": {
24583           "type": "object",
24584           "properties": {
24585             "Results": {
24586               "type": "array",
24587               "items": {
24588                 "$ref": "#/definitions/ToolsResult"
24589               }
24590             }
24591           },
24592           "additionalProperties": false,
24593           "required": [
24594             "Results"
24595           ]
24596         },
24597         "Version": {
24598           "type": "object",
24599           "properties": {
24600             "Version": {
24601               "$ref": "#/definitions/Binary"
24602             }
24603           },
24604           "additionalProperties": false,
24605           "required": [
24606             "Version"
24607           ]
24608         },
24609         "VersionResult": {
24610           "type": "object",
24611           "properties": {
24612             "Error": {
24613               "$ref": "#/definitions/Error"
24614             },
24615             "Version": {
24616               "$ref": "#/definitions/Number"
24617             }
24618           },
24619           "additionalProperties": false,
24620           "required": [
24621             "Version",
24622             "Error"
24623           ]
24624         },
24625         "VersionResults": {
24626           "type": "object",
24627           "properties": {
24628             "Results": {
24629               "type": "array",
24630               "items": {
24631                 "$ref": "#/definitions/VersionResult"
24632               }
24633             }
24634           },
24635           "additionalProperties": false,
24636           "required": [
24637             "Results"
24638           ]
24639         },
24640         "caveat": {
24641           "type": "object",
24642           "properties": {
24643             "caveatId": {
24644               "$ref": "#/definitions/packet"
24645             },
24646             "location": {
24647               "$ref": "#/definitions/packet"
24648             },
24649             "verificationId": {
24650               "$ref": "#/definitions/packet"
24651             }
24652           },
24653           "additionalProperties": false,
24654           "required": [
24655             "location",
24656             "caveatId",
24657             "verificationId"
24658           ]
24659         },
24660         "packet": {
24661           "type": "object",
24662           "properties": {
24663             "headerLen": {
24664               "type": "integer"
24665             },
24666             "start": {
24667               "type": "integer"
24668             },
24669             "totalLen": {
24670               "type": "integer"
24671             }
24672           },
24673           "additionalProperties": false,
24674           "required": [
24675             "start",
24676             "totalLen",
24677             "headerLen"
24678           ]
24679         }
24680       }
24681     }
24682   },
24683   {
24684     "Name": "UserManager",
24685     "Version": 1,
24686     "Schema": {
24687       "type": "object",
24688       "properties": {
24689         "AddUser": {
24690           "type": "object",
24691           "properties": {
24692             "Params": {
24693               "$ref": "#/definitions/AddUsers"
24694             },
24695             "Result": {
24696               "$ref": "#/definitions/AddUserResults"
24697             }
24698           }
24699         },
24700         "CreateLocalLoginMacaroon": {
24701           "type": "object",
24702           "properties": {
24703             "Params": {
24704               "$ref": "#/definitions/Entities"
24705             },
24706             "Result": {
24707               "$ref": "#/definitions/MacaroonResults"
24708             }
24709           }
24710         },
24711         "DisableUser": {
24712           "type": "object",
24713           "properties": {
24714             "Params": {
24715               "$ref": "#/definitions/Entities"
24716             },
24717             "Result": {
24718               "$ref": "#/definitions/ErrorResults"
24719             }
24720           }
24721         },
24722         "EnableUser": {
24723           "type": "object",
24724           "properties": {
24725             "Params": {
24726               "$ref": "#/definitions/Entities"
24727             },
24728             "Result": {
24729               "$ref": "#/definitions/ErrorResults"
24730             }
24731           }
24732         },
24733         "SetPassword": {
24734           "type": "object",
24735           "properties": {
24736             "Params": {
24737               "$ref": "#/definitions/EntityPasswords"
24738             },
24739             "Result": {
24740               "$ref": "#/definitions/ErrorResults"
24741             }
24742           }
24743         },
24744         "UserInfo": {
24745           "type": "object",
24746           "properties": {
24747             "Params": {
24748               "$ref": "#/definitions/UserInfoRequest"
24749             },
24750             "Result": {
24751               "$ref": "#/definitions/UserInfoResults"
24752             }
24753           }
24754         }
24755       },
24756       "definitions": {
24757         "AddUser": {
24758           "type": "object",
24759           "properties": {
24760             "display-name": {
24761               "type": "string"
24762             },
24763             "model-access-permission": {
24764               "type": "string"
24765             },
24766             "password": {
24767               "type": "string"
24768             },
24769             "shared-model-tags": {
24770               "type": "array",
24771               "items": {
24772                 "type": "string"
24773               }
24774             },
24775             "username": {
24776               "type": "string"
24777             }
24778           },
24779           "additionalProperties": false,
24780           "required": [
24781             "username",
24782             "display-name",
24783             "shared-model-tags"
24784           ]
24785         },
24786         "AddUserResult": {
24787           "type": "object",
24788           "properties": {
24789             "error": {
24790               "$ref": "#/definitions/Error"
24791             },
24792             "secret-key": {
24793               "type": "array",
24794               "items": {
24795                 "type": "integer"
24796               }
24797             },
24798             "tag": {
24799               "type": "string"
24800             }
24801           },
24802           "additionalProperties": false
24803         },
24804         "AddUserResults": {
24805           "type": "object",
24806           "properties": {
24807             "results": {
24808               "type": "array",
24809               "items": {
24810                 "$ref": "#/definitions/AddUserResult"
24811               }
24812             }
24813           },
24814           "additionalProperties": false,
24815           "required": [
24816             "results"
24817           ]
24818         },
24819         "AddUsers": {
24820           "type": "object",
24821           "properties": {
24822             "users": {
24823               "type": "array",
24824               "items": {
24825                 "$ref": "#/definitions/AddUser"
24826               }
24827             }
24828           },
24829           "additionalProperties": false,
24830           "required": [
24831             "users"
24832           ]
24833         },
24834         "Entities": {
24835           "type": "object",
24836           "properties": {
24837             "Entities": {
24838               "type": "array",
24839               "items": {
24840                 "$ref": "#/definitions/Entity"
24841               }
24842             }
24843           },
24844           "additionalProperties": false,
24845           "required": [
24846             "Entities"
24847           ]
24848         },
24849         "Entity": {
24850           "type": "object",
24851           "properties": {
24852             "Tag": {
24853               "type": "string"
24854             }
24855           },
24856           "additionalProperties": false,
24857           "required": [
24858             "Tag"
24859           ]
24860         },
24861         "EntityPassword": {
24862           "type": "object",
24863           "properties": {
24864             "Password": {
24865               "type": "string"
24866             },
24867             "Tag": {
24868               "type": "string"
24869             }
24870           },
24871           "additionalProperties": false,
24872           "required": [
24873             "Tag",
24874             "Password"
24875           ]
24876         },
24877         "EntityPasswords": {
24878           "type": "object",
24879           "properties": {
24880             "Changes": {
24881               "type": "array",
24882               "items": {
24883                 "$ref": "#/definitions/EntityPassword"
24884               }
24885             }
24886           },
24887           "additionalProperties": false,
24888           "required": [
24889             "Changes"
24890           ]
24891         },
24892         "Error": {
24893           "type": "object",
24894           "properties": {
24895             "Code": {
24896               "type": "string"
24897             },
24898             "Info": {
24899               "$ref": "#/definitions/ErrorInfo"
24900             },
24901             "Message": {
24902               "type": "string"
24903             }
24904           },
24905           "additionalProperties": false,
24906           "required": [
24907             "Message",
24908             "Code"
24909           ]
24910         },
24911         "ErrorInfo": {
24912           "type": "object",
24913           "properties": {
24914             "Macaroon": {
24915               "$ref": "#/definitions/Macaroon"
24916             },
24917             "MacaroonPath": {
24918               "type": "string"
24919             }
24920           },
24921           "additionalProperties": false
24922         },
24923         "ErrorResult": {
24924           "type": "object",
24925           "properties": {
24926             "Error": {
24927               "$ref": "#/definitions/Error"
24928             }
24929           },
24930           "additionalProperties": false,
24931           "required": [
24932             "Error"
24933           ]
24934         },
24935         "ErrorResults": {
24936           "type": "object",
24937           "properties": {
24938             "Results": {
24939               "type": "array",
24940               "items": {
24941                 "$ref": "#/definitions/ErrorResult"
24942               }
24943             }
24944           },
24945           "additionalProperties": false,
24946           "required": [
24947             "Results"
24948           ]
24949         },
24950         "Macaroon": {
24951           "type": "object",
24952           "properties": {
24953             "caveats": {
24954               "type": "array",
24955               "items": {
24956                 "$ref": "#/definitions/caveat"
24957               }
24958             },
24959             "data": {
24960               "type": "array",
24961               "items": {
24962                 "type": "integer"
24963               }
24964             },
24965             "id": {
24966               "$ref": "#/definitions/packet"
24967             },
24968             "location": {
24969               "$ref": "#/definitions/packet"
24970             },
24971             "sig": {
24972               "type": "array",
24973               "items": {
24974                 "type": "integer"
24975               }
24976             }
24977           },
24978           "additionalProperties": false,
24979           "required": [
24980             "data",
24981             "location",
24982             "id",
24983             "caveats",
24984             "sig"
24985           ]
24986         },
24987         "MacaroonResult": {
24988           "type": "object",
24989           "properties": {
24990             "error": {
24991               "$ref": "#/definitions/Error"
24992             },
24993             "result": {
24994               "$ref": "#/definitions/Macaroon"
24995             }
24996           },
24997           "additionalProperties": false
24998         },
24999         "MacaroonResults": {
25000           "type": "object",
25001           "properties": {
25002             "results": {
25003               "type": "array",
25004               "items": {
25005                 "$ref": "#/definitions/MacaroonResult"
25006               }
25007             }
25008           },
25009           "additionalProperties": false,
25010           "required": [
25011             "results"
25012           ]
25013         },
25014         "UserInfo": {
25015           "type": "object",
25016           "properties": {
25017             "created-by": {
25018               "type": "string"
25019             },
25020             "date-created": {
25021               "type": "string",
25022               "format": "date-time"
25023             },
25024             "disabled": {
25025               "type": "boolean"
25026             },
25027             "display-name": {
25028               "type": "string"
25029             },
25030             "last-connection": {
25031               "type": "string",
25032               "format": "date-time"
25033             },
25034             "username": {
25035               "type": "string"
25036             }
25037           },
25038           "additionalProperties": false,
25039           "required": [
25040             "username",
25041             "display-name",
25042             "created-by",
25043             "date-created",
25044             "disabled"
25045           ]
25046         },
25047         "UserInfoRequest": {
25048           "type": "object",
25049           "properties": {
25050             "entities": {
25051               "type": "array",
25052               "items": {
25053                 "$ref": "#/definitions/Entity"
25054               }
25055             },
25056             "include-disabled": {
25057               "type": "boolean"
25058             }
25059           },
25060           "additionalProperties": false,
25061           "required": [
25062             "entities",
25063             "include-disabled"
25064           ]
25065         },
25066         "UserInfoResult": {
25067           "type": "object",
25068           "properties": {
25069             "error": {
25070               "$ref": "#/definitions/Error"
25071             },
25072             "result": {
25073               "$ref": "#/definitions/UserInfo"
25074             }
25075           },
25076           "additionalProperties": false
25077         },
25078         "UserInfoResults": {
25079           "type": "object",
25080           "properties": {
25081             "results": {
25082               "type": "array",
25083               "items": {
25084                 "$ref": "#/definitions/UserInfoResult"
25085               }
25086             }
25087           },
25088           "additionalProperties": false,
25089           "required": [
25090             "results"
25091           ]
25092         },
25093         "caveat": {
25094           "type": "object",
25095           "properties": {
25096             "caveatId": {
25097               "$ref": "#/definitions/packet"
25098             },
25099             "location": {
25100               "$ref": "#/definitions/packet"
25101             },
25102             "verificationId": {
25103               "$ref": "#/definitions/packet"
25104             }
25105           },
25106           "additionalProperties": false,
25107           "required": [
25108             "location",
25109             "caveatId",
25110             "verificationId"
25111           ]
25112         },
25113         "packet": {
25114           "type": "object",
25115           "properties": {
25116             "headerLen": {
25117               "type": "integer"
25118             },
25119             "start": {
25120               "type": "integer"
25121             },
25122             "totalLen": {
25123               "type": "integer"
25124             }
25125           },
25126           "additionalProperties": false,
25127           "required": [
25128             "start",
25129             "totalLen",
25130             "headerLen"
25131           ]
25132         }
25133       }
25134     }
25135   },
25136   {
25137     "Name": "VolumeAttachmentsWatcher",
25138     "Version": 2,
25139     "Schema": {
25140       "type": "object",
25141       "properties": {
25142         "Next": {
25143           "type": "object",
25144           "properties": {
25145             "Result": {
25146               "$ref": "#/definitions/MachineStorageIdsWatchResult"
25147             }
25148           }
25149         },
25150         "Stop": {
25151           "type": "object"
25152         }
25153       },
25154       "definitions": {
25155         "Error": {
25156           "type": "object",
25157           "properties": {
25158             "Code": {
25159               "type": "string"
25160             },
25161             "Info": {
25162               "$ref": "#/definitions/ErrorInfo"
25163             },
25164             "Message": {
25165               "type": "string"
25166             }
25167           },
25168           "additionalProperties": false,
25169           "required": [
25170             "Message",
25171             "Code"
25172           ]
25173         },
25174         "ErrorInfo": {
25175           "type": "object",
25176           "properties": {
25177             "Macaroon": {
25178               "$ref": "#/definitions/Macaroon"
25179             },
25180             "MacaroonPath": {
25181               "type": "string"
25182             }
25183           },
25184           "additionalProperties": false
25185         },
25186         "Macaroon": {
25187           "type": "object",
25188           "properties": {
25189             "caveats": {
25190               "type": "array",
25191               "items": {
25192                 "$ref": "#/definitions/caveat"
25193               }
25194             },
25195             "data": {
25196               "type": "array",
25197               "items": {
25198                 "type": "integer"
25199               }
25200             },
25201             "id": {
25202               "$ref": "#/definitions/packet"
25203             },
25204             "location": {
25205               "$ref": "#/definitions/packet"
25206             },
25207             "sig": {
25208               "type": "array",
25209               "items": {
25210                 "type": "integer"
25211               }
25212             }
25213           },
25214           "additionalProperties": false,
25215           "required": [
25216             "data",
25217             "location",
25218             "id",
25219             "caveats",
25220             "sig"
25221           ]
25222         },
25223         "MachineStorageId": {
25224           "type": "object",
25225           "properties": {
25226             "attachmenttag": {
25227               "type": "string"
25228             },
25229             "machinetag": {
25230               "type": "string"
25231             }
25232           },
25233           "additionalProperties": false,
25234           "required": [
25235             "machinetag",
25236             "attachmenttag"
25237           ]
25238         },
25239         "MachineStorageIdsWatchResult": {
25240           "type": "object",
25241           "properties": {
25242             "Changes": {
25243               "type": "array",
25244               "items": {
25245                 "$ref": "#/definitions/MachineStorageId"
25246               }
25247             },
25248             "Error": {
25249               "$ref": "#/definitions/Error"
25250             },
25251             "MachineStorageIdsWatcherId": {
25252               "type": "string"
25253             }
25254           },
25255           "additionalProperties": false,
25256           "required": [
25257             "MachineStorageIdsWatcherId",
25258             "Changes",
25259             "Error"
25260           ]
25261         },
25262         "caveat": {
25263           "type": "object",
25264           "properties": {
25265             "caveatId": {
25266               "$ref": "#/definitions/packet"
25267             },
25268             "location": {
25269               "$ref": "#/definitions/packet"
25270             },
25271             "verificationId": {
25272               "$ref": "#/definitions/packet"
25273             }
25274           },
25275           "additionalProperties": false,
25276           "required": [
25277             "location",
25278             "caveatId",
25279             "verificationId"
25280           ]
25281         },
25282         "packet": {
25283           "type": "object",
25284           "properties": {
25285             "headerLen": {
25286               "type": "integer"
25287             },
25288             "start": {
25289               "type": "integer"
25290             },
25291             "totalLen": {
25292               "type": "integer"
25293             }
25294           },
25295           "additionalProperties": false,
25296           "required": [
25297             "start",
25298             "totalLen",
25299             "headerLen"
25300           ]
25301         }
25302       }
25303     }
25304   }
25305 ]