Fix Nexus-IQ security issues
[msb/apigateway.git] / apiroute / apiroute-service / src / main / resources / swagger.json
1 {
2   "swagger" : "2.0",
3   "info" : {
4     "description" : "MicroService Bus rest API",
5     "version" : "1.0.0",
6     "title" : "MicroService Bus rest API",
7     "license" : {
8       "name" : "https://wiki.onap.org/display/DW/Apache+2.0+License"
9     }
10   },
11   "host" : "127.0.0.1:80",
12   "basePath" : "/api/microservices/v1",
13   "tags" : [ {
14     "name" : "ApiRoute"
15   }, {
16     "name" : "CustomRoute"
17   }, {
18     "name" : "iuiRoute"
19   } ],
20   "schemes" : [ "http", "https" ],
21   "paths" : {
22     "/apiRoute" : {
23       "get" : {
24         "tags" : [ "ApiRoute" ],
25         "summary" : "get all ApiRoute ",
26         "description" : "",
27         "operationId" : "getApiRoutes",
28         "produces" : [ "application/json" ],
29         "parameters" : [ {
30           "name" : "routeWay",
31           "in" : "query",
32           "description" : "Route Way",
33           "required" : false,
34           "type" : "string",
35           "default" : "ip"
36         } ],
37         "responses" : {
38           "200" : {
39             "description" : "successful operation",
40             "schema" : {
41               "type" : "array",
42               "items" : {
43                 "$ref" : "#/definitions/ApiRouteInfo"
44               }
45             }
46           },
47           "500" : {
48             "description" : "get ApiRouteInfo List  fail"
49           }
50         }
51       },
52       "post" : {
53         "tags" : [ "ApiRoute" ],
54         "summary" : "add one ApiRoute ",
55         "description" : "",
56         "operationId" : "addApiRoute",
57         "produces" : [ "application/json" ],
58         "parameters" : [ {
59           "in" : "body",
60           "name" : "body",
61           "description" : "ApiRoute Instance Info",
62           "required" : true,
63           "schema" : {
64             "$ref" : "#/definitions/ApiRouteInfo"
65           }
66         }, {
67           "name" : "routeWay",
68           "in" : "query",
69           "description" : "Route Way",
70           "required" : false,
71           "type" : "string",
72           "default" : "ip"
73         } ],
74         "responses" : {
75           "201" : {
76             "description" : "successful operation",
77             "schema" : {
78               "$ref" : "#/definitions/ApiRouteInfo"
79             }
80           },
81           "400" : {
82             "description" : "Unprocessable ApiRouteInfo JSON REQUEST"
83           },
84           "422" : {
85             "description" : "Unprocessable ApiRouteInfo Entity "
86           },
87           "500" : {
88             "description" : "add ApiRouteInfo fail"
89           }
90         }
91       }
92     },
93     "/apiRoute/apiDocs" : {
94       "get" : {
95         "tags" : [ "ApiRoute" ],
96         "summary" : "get all Local apiDoc ",
97         "description" : "",
98         "operationId" : "getApiDocs",
99         "produces" : [ "application/json" ],
100         "responses" : {
101           "200" : {
102             "description" : "successful operation",
103             "schema" : {
104               "type" : "array",
105               "items" : {
106                 "type" : "string"
107               }
108             }
109           },
110           "500" : {
111             "description" : "get apiDoc List  fail"
112           }
113         }
114       }
115     },
116     "/apiRoute/discoverInfo" : {
117       "get" : {
118         "tags" : [ "ApiRoute" ],
119         "summary" : "get discover Info ",
120         "description" : "",
121         "operationId" : "getServiceDiscoverInfo",
122         "produces" : [ "application/json" ],
123         "responses" : {
124           "200" : {
125             "description" : "successful operation",
126             "schema" : {
127               "$ref" : "#/definitions/DiscoverInfo"
128             }
129           },
130           "500" : {
131             "description" : "get discover Info fail"
132           }
133         }
134       }
135     },
136     "/apiRoute/export" : {
137       "get" : {
138         "tags" : [ "ApiRoute" ],
139         "summary" : "export all route service Info by json-file",
140         "description" : "",
141         "operationId" : "exportService",
142         "produces" : [ "text/plain" ],
143         "parameters" : [ {
144           "name" : "routeWay",
145           "in" : "query",
146           "description" : "Route Way",
147           "required" : false,
148           "type" : "string",
149           "default" : "ip"
150         } ],
151         "responses" : {
152           "200" : {
153             "description" : "successful operation",
154             "schema" : {
155               "type" : "string"
156             }
157           },
158           "406" : {
159             "description" : " not Acceptable client-side"
160           },
161           "500" : {
162             "description" : "export fail"
163           }
164         }
165       }
166     },
167     "/apiRoute/{serviceName}/version/{version}" : {
168       "get" : {
169         "tags" : [ "ApiRoute" ],
170         "summary" : "get one ApiRoute ",
171         "description" : "",
172         "operationId" : "getApiRoute",
173         "produces" : [ "application/json" ],
174         "parameters" : [ {
175           "name" : "serviceName",
176           "in" : "path",
177           "description" : "ApiRoute serviceName",
178           "required" : true,
179           "type" : "string"
180         }, {
181           "name" : "version",
182           "in" : "path",
183           "description" : "ApiRoute version,if the version is empty, please enter \"null\"",
184           "required" : true,
185           "type" : "string"
186         }, {
187           "name" : "host",
188           "in" : "query",
189           "description" : "ApiRoute host",
190           "required" : false,
191           "type" : "string"
192         }, {
193           "name" : "publish_port",
194           "in" : "query",
195           "description" : "ApiRoute Publish port",
196           "required" : false,
197           "type" : "string"
198         }, {
199           "name" : "routeWay",
200           "in" : "query",
201           "description" : "Route Way",
202           "required" : false,
203           "type" : "string",
204           "default" : "ip"
205         } ],
206         "responses" : {
207           "200" : {
208             "description" : "successful operation",
209             "schema" : {
210               "$ref" : "#/definitions/ApiRouteInfo"
211             }
212           },
213           "404" : {
214             "description" : "ApiRouteInfo not found"
215           },
216           "422" : {
217             "description" : "Unprocessable ApiRouteInfo Entity "
218           },
219           "500" : {
220             "description" : "get ApiRouteInfo fail"
221           }
222         }
223       },
224       "put" : {
225         "tags" : [ "ApiRoute" ],
226         "summary" : "update one ApiRoute by serviceName and version",
227         "description" : "",
228         "operationId" : "updateApiRoute",
229         "produces" : [ "application/json" ],
230         "parameters" : [ {
231           "name" : "serviceName",
232           "in" : "path",
233           "description" : "ApiRoute serviceName",
234           "required" : true,
235           "type" : "string"
236         }, {
237           "name" : "version",
238           "in" : "path",
239           "description" : "ApiRoute version,if the version is empty, please enter \"null\"",
240           "required" : true,
241           "type" : "string"
242         }, {
243           "in" : "body",
244           "name" : "body",
245           "description" : "ApiRoute Instance Info",
246           "required" : true,
247           "schema" : {
248             "$ref" : "#/definitions/ApiRouteInfo"
249           }
250         }, {
251           "name" : "routeWay",
252           "in" : "query",
253           "description" : "Route Way",
254           "required" : false,
255           "type" : "string",
256           "default" : "ip"
257         } ],
258         "responses" : {
259           "201" : {
260             "description" : "successful operation",
261             "schema" : {
262               "$ref" : "#/definitions/ApiRouteInfo"
263             }
264           },
265           "400" : {
266             "description" : "Unprocessable ApiRouteInfo JSON REQUEST"
267           },
268           "422" : {
269             "description" : "Unprocessable ApiRouteInfo Entity "
270           },
271           "500" : {
272             "description" : "update ApiRouteInfo fail"
273           }
274         }
275       },
276       "delete" : {
277         "tags" : [ "ApiRoute" ],
278         "summary" : "delete one ApiRoute by serviceName and version",
279         "description" : "",
280         "operationId" : "deleteApiRoute",
281         "produces" : [ "application/json" ],
282         "parameters" : [ {
283           "name" : "serviceName",
284           "in" : "path",
285           "description" : "ApiRoute serviceName",
286           "required" : true,
287           "type" : "string"
288         }, {
289           "name" : "version",
290           "in" : "path",
291           "description" : "ApiRoute version,if the version is empty, please enter \"null\"",
292           "required" : true,
293           "type" : "string"
294         }, {
295           "name" : "host",
296           "in" : "query",
297           "description" : "ApiRoute host",
298           "required" : false,
299           "type" : "string"
300         }, {
301           "name" : "publish_port",
302           "in" : "query",
303           "description" : "ApiRoute Publish port",
304           "required" : false,
305           "type" : "string"
306         }, {
307           "name" : "routeWay",
308           "in" : "query",
309           "description" : "Route Way",
310           "required" : false,
311           "type" : "string",
312           "default" : "ip"
313         } ],
314         "responses" : {
315           "204" : {
316             "description" : "delete ApiRouteInfo succeed "
317           },
318           "404" : {
319             "description" : "ApiRouteInfo not found"
320           },
321           "500" : {
322             "description" : "delete ApiRouteInfo fail"
323           }
324         }
325       }
326     },
327     "/apiRoute/{serviceName}/version/{version}/status/{status}" : {
328       "put" : {
329         "tags" : [ "ApiRoute" ],
330         "summary" : "update one ApiRoute  status by serviceName and version",
331         "description" : "",
332         "operationId" : "updateApiRouteStatus",
333         "produces" : [ "application/json" ],
334         "parameters" : [ {
335           "name" : "serviceName",
336           "in" : "path",
337           "description" : "ApiRoute serviceName",
338           "required" : true,
339           "type" : "string"
340         }, {
341           "name" : "version",
342           "in" : "path",
343           "description" : "ApiRoute version,if the version is empty, please enter \"null\"",
344           "required" : true,
345           "type" : "string"
346         }, {
347           "name" : "status",
348           "in" : "path",
349           "description" : "ApiRoute status,1:abled  0:disabled",
350           "required" : true,
351           "type" : "string"
352         }, {
353           "name" : "host",
354           "in" : "query",
355           "description" : "ApiRoute host",
356           "required" : false,
357           "type" : "string"
358         }, {
359           "name" : "publish_port",
360           "in" : "query",
361           "description" : "ApiRoute Publish port",
362           "required" : false,
363           "type" : "string"
364         }, {
365           "name" : "routeWay",
366           "in" : "query",
367           "description" : "Route Way",
368           "required" : false,
369           "type" : "string",
370           "default" : "ip"
371         } ],
372         "responses" : {
373           "201" : {
374             "description" : "successful operation",
375             "schema" : {
376               "$ref" : "#/definitions/ApiRouteInfo"
377             }
378           },
379           "404" : {
380             "description" : "ApiRouteInfo not found"
381           },
382           "422" : {
383             "description" : "Unprocessable ApiRouteInfo Entity "
384           },
385           "500" : {
386             "description" : "update status fail"
387           }
388         }
389       }
390     },
391     "/customRoute/all" : {
392       "get" : {
393         "tags" : [ "CustomRoute" ],
394         "summary" : "get all CustomRoute ",
395         "description" : "",
396         "operationId" : "getCustomRoutes",
397         "produces" : [ "application/json" ],
398         "parameters" : [ {
399           "name" : "routeWay",
400           "in" : "query",
401           "description" : "Route Way",
402           "required" : false,
403           "type" : "string",
404           "default" : "ip"
405         } ],
406         "responses" : {
407           "200" : {
408             "description" : "successful operation",
409             "schema" : {
410               "type" : "array",
411               "items" : {
412                 "$ref" : "#/definitions/CustomRouteInfo"
413               }
414             }
415           },
416           "500" : {
417             "description" : "get CustomRouteInfo List  fail"
418           }
419         }
420       }
421     },
422     "/customRoute/instance" : {
423       "get" : {
424         "tags" : [ "CustomRoute" ],
425         "summary" : "get one CustomRoute ",
426         "description" : "",
427         "operationId" : "getCustomRoute",
428         "produces" : [ "application/json" ],
429         "parameters" : [ {
430           "name" : "serviceName",
431           "in" : "query",
432           "description" : "CustomRoute serviceName",
433           "required" : false,
434           "type" : "string"
435         }, {
436           "name" : "host",
437           "in" : "query",
438           "description" : "CustomRoute host",
439           "required" : false,
440           "type" : "string"
441         }, {
442           "name" : "publish_port",
443           "in" : "query",
444           "description" : "CustomRoute Publish port",
445           "required" : false,
446           "type" : "string"
447         }, {
448           "name" : "routeWay",
449           "in" : "query",
450           "description" : "Route Way",
451           "required" : false,
452           "type" : "string",
453           "default" : "ip"
454         } ],
455         "responses" : {
456           "200" : {
457             "description" : "successful operation",
458             "schema" : {
459               "$ref" : "#/definitions/CustomRouteInfo"
460             }
461           },
462           "404" : {
463             "description" : "CustomRoute not found"
464           },
465           "422" : {
466             "description" : "Unprocessable CustomRoute Entity "
467           },
468           "500" : {
469             "description" : "get CustomRoute fail"
470           }
471         }
472       },
473       "post" : {
474         "tags" : [ "CustomRoute" ],
475         "summary" : "add one CustomRoute ",
476         "description" : "",
477         "operationId" : "addCustomRoute",
478         "produces" : [ "application/json" ],
479         "parameters" : [ {
480           "in" : "body",
481           "name" : "body",
482           "description" : "CustomRoute Instance Info",
483           "required" : true,
484           "schema" : {
485             "$ref" : "#/definitions/CustomRouteInfo"
486           }
487         }, {
488           "name" : "routeWay",
489           "in" : "query",
490           "description" : "Route Way",
491           "required" : false,
492           "type" : "string",
493           "default" : "ip"
494         } ],
495         "responses" : {
496           "201" : {
497             "description" : "successful operation",
498             "schema" : {
499               "$ref" : "#/definitions/CustomRouteInfo"
500             }
501           },
502           "400" : {
503             "description" : "Unprocessable CustomRouteInfo JSON REQUEST"
504           },
505           "422" : {
506             "description" : "Unprocessable CustomRouteInfo Entity "
507           },
508           "500" : {
509             "description" : "add CustomRouteInfo fail"
510           }
511         }
512       },
513       "put" : {
514         "tags" : [ "CustomRoute" ],
515         "summary" : "update one CustomRoute by serviceName",
516         "description" : "",
517         "operationId" : "updateCustomRoute",
518         "produces" : [ "application/json" ],
519         "parameters" : [ {
520           "name" : "serviceName",
521           "in" : "query",
522           "description" : "CustomRoute serviceName",
523           "required" : true,
524           "type" : "string"
525         }, {
526           "in" : "body",
527           "name" : "body",
528           "description" : "CustomRoute Instance Info",
529           "required" : true,
530           "schema" : {
531             "$ref" : "#/definitions/CustomRouteInfo"
532           }
533         }, {
534           "name" : "routeWay",
535           "in" : "query",
536           "description" : "Route Way",
537           "required" : false,
538           "type" : "string",
539           "default" : "ip"
540         } ],
541         "responses" : {
542           "201" : {
543             "description" : "successful operation",
544             "schema" : {
545               "$ref" : "#/definitions/CustomRouteInfo"
546             }
547           },
548           "400" : {
549             "description" : "Unprocessable CustomRoute JSON REQUEST"
550           },
551           "422" : {
552             "description" : "Unprocessable CustomRoute Entity "
553           },
554           "500" : {
555             "description" : "update CustomRoute fail"
556           }
557         }
558       },
559       "delete" : {
560         "tags" : [ "CustomRoute" ],
561         "summary" : "delete one CustomRoute by serviceName",
562         "description" : "",
563         "operationId" : "deleteCustomRoute",
564         "produces" : [ "application/json" ],
565         "parameters" : [ {
566           "name" : "serviceName",
567           "in" : "query",
568           "description" : "CustomRoute serviceName",
569           "required" : true,
570           "type" : "string"
571         }, {
572           "name" : "host",
573           "in" : "query",
574           "description" : "CustomRoute host",
575           "required" : false,
576           "type" : "string"
577         }, {
578           "name" : "publish_port",
579           "in" : "query",
580           "description" : "CustomRoute Publish port",
581           "required" : false,
582           "type" : "string"
583         }, {
584           "name" : "routeWay",
585           "in" : "query",
586           "description" : "Route Way",
587           "required" : false,
588           "type" : "string",
589           "default" : "ip"
590         } ],
591         "responses" : {
592           "204" : {
593             "description" : "delete customRoute succeed "
594           },
595           "404" : {
596             "description" : "customRoute not found"
597           },
598           "500" : {
599             "description" : "delete customRoute fail"
600           }
601         }
602       }
603     },
604     "/customRoute/status" : {
605       "put" : {
606         "tags" : [ "CustomRoute" ],
607         "summary" : "update one CustomRoute  status by serviceName ",
608         "description" : "",
609         "operationId" : "updateCustomRouteStatus",
610         "produces" : [ "application/json" ],
611         "parameters" : [ {
612           "name" : "serviceName",
613           "in" : "query",
614           "description" : "CustomRoute serviceName",
615           "required" : true,
616           "type" : "string"
617         }, {
618           "name" : "host",
619           "in" : "query",
620           "description" : "CustomRoute host",
621           "required" : false,
622           "type" : "string"
623         }, {
624           "name" : "status",
625           "in" : "query",
626           "description" : "CustomRoute status,1:abled  0:disabled",
627           "required" : true,
628           "type" : "string"
629         }, {
630           "name" : "publish_port",
631           "in" : "query",
632           "description" : "CustomRoute Publish port",
633           "required" : false,
634           "type" : "string"
635         }, {
636           "name" : "routeWay",
637           "in" : "query",
638           "description" : "Route Way",
639           "required" : false,
640           "type" : "string",
641           "default" : "ip"
642         } ],
643         "responses" : {
644           "201" : {
645             "description" : "successful operation",
646             "schema" : {
647               "$ref" : "#/definitions/CustomRouteInfo"
648             }
649           },
650           "404" : {
651             "description" : "customRoute not found"
652           },
653           "422" : {
654             "description" : "Unprocessable customRoute Entity "
655           },
656           "500" : {
657             "description" : "update status fail"
658           }
659         }
660       }
661     },
662     "/iuiRoute" : {
663       "get" : {
664         "tags" : [ "iuiRoute" ],
665         "summary" : "get all iuiRoute ",
666         "description" : "",
667         "operationId" : "getIuiRoutes",
668         "produces" : [ "application/json" ],
669         "parameters" : [ {
670           "name" : "routeWay",
671           "in" : "query",
672           "description" : "Route Way",
673           "required" : false,
674           "type" : "string",
675           "default" : "ip"
676         } ],
677         "responses" : {
678           "200" : {
679             "description" : "successful operation",
680             "schema" : {
681               "type" : "array",
682               "items" : {
683                 "$ref" : "#/definitions/IuiRouteInfo"
684               }
685             }
686           },
687           "500" : {
688             "description" : "get iuiRouteInfo List  fail"
689           }
690         }
691       },
692       "post" : {
693         "tags" : [ "iuiRoute" ],
694         "summary" : "add one iuiRoute ",
695         "description" : "",
696         "operationId" : "addIuiRoute",
697         "produces" : [ "application/json" ],
698         "parameters" : [ {
699           "in" : "body",
700           "name" : "body",
701           "description" : "iuiRoute Instance Info",
702           "required" : true,
703           "schema" : {
704             "$ref" : "#/definitions/IuiRouteInfo"
705           }
706         }, {
707           "name" : "routeWay",
708           "in" : "query",
709           "description" : "Route Way",
710           "required" : false,
711           "type" : "string",
712           "default" : "ip"
713         } ],
714         "responses" : {
715           "201" : {
716             "description" : "successful operation",
717             "schema" : {
718               "$ref" : "#/definitions/IuiRouteInfo"
719             }
720           },
721           "400" : {
722             "description" : "Unprocessable iuiRouteInfo JSON REQUEST"
723           },
724           "422" : {
725             "description" : "Unprocessable iuiRouteInfo Entity "
726           },
727           "500" : {
728             "description" : "add iuiRouteInfo fail"
729           }
730         }
731       }
732     },
733     "/iuiRoute/{serviceName}" : {
734       "get" : {
735         "tags" : [ "iuiRoute" ],
736         "summary" : "get one iuiRoute ",
737         "description" : "",
738         "operationId" : "getIuiRoute",
739         "produces" : [ "application/json" ],
740         "parameters" : [ {
741           "name" : "serviceName",
742           "in" : "path",
743           "description" : "iuiRoute serviceName",
744           "required" : true,
745           "type" : "string"
746         }, {
747           "name" : "host",
748           "in" : "query",
749           "description" : "iuiRoute host",
750           "required" : false,
751           "type" : "string"
752         }, {
753           "name" : "publish_port",
754           "in" : "query",
755           "description" : "iuiRoute Publish port",
756           "required" : false,
757           "type" : "string"
758         }, {
759           "name" : "routeWay",
760           "in" : "query",
761           "description" : "Route Way",
762           "required" : false,
763           "type" : "string",
764           "default" : "ip"
765         } ],
766         "responses" : {
767           "200" : {
768             "description" : "successful operation",
769             "schema" : {
770               "$ref" : "#/definitions/IuiRouteInfo"
771             }
772           },
773           "404" : {
774             "description" : "IuiRouteInfo not found"
775           },
776           "422" : {
777             "description" : "Unprocessable IuiRouteInfo Entity "
778           },
779           "500" : {
780             "description" : "get IuiRouteInfo fail"
781           }
782         }
783       },
784       "put" : {
785         "tags" : [ "iuiRoute" ],
786         "summary" : "update one iuiRoute by serviceName",
787         "description" : "",
788         "operationId" : "updateIuiRoute",
789         "produces" : [ "application/json" ],
790         "parameters" : [ {
791           "name" : "serviceName",
792           "in" : "path",
793           "description" : "iuiRoute serviceName",
794           "required" : true,
795           "type" : "string"
796         }, {
797           "in" : "body",
798           "name" : "body",
799           "description" : "iuiRoute Instance Info",
800           "required" : true,
801           "schema" : {
802             "$ref" : "#/definitions/IuiRouteInfo"
803           }
804         }, {
805           "name" : "routeWay",
806           "in" : "query",
807           "description" : "Route Way",
808           "required" : false,
809           "type" : "string",
810           "default" : "ip"
811         } ],
812         "responses" : {
813           "201" : {
814             "description" : "successful operation",
815             "schema" : {
816               "$ref" : "#/definitions/IuiRouteInfo"
817             }
818           },
819           "400" : {
820             "description" : "Unprocessable IuiRouteInfo JSON REQUEST"
821           },
822           "422" : {
823             "description" : "Unprocessable IuiRouteInfo Entity "
824           },
825           "500" : {
826             "description" : "update IuiRouteInfo fail"
827           }
828         }
829       },
830       "delete" : {
831         "tags" : [ "iuiRoute" ],
832         "summary" : "delete one iuiRoute by serviceName",
833         "description" : "",
834         "operationId" : "deleteIuiRoute",
835         "produces" : [ "application/json" ],
836         "parameters" : [ {
837           "name" : "serviceName",
838           "in" : "path",
839           "description" : "iuiRoute serviceName",
840           "required" : true,
841           "type" : "string"
842         }, {
843           "name" : "host",
844           "in" : "query",
845           "description" : "iuiRoute host",
846           "required" : false,
847           "type" : "string"
848         }, {
849           "name" : "publish_port",
850           "in" : "query",
851           "description" : "iuiRoute Publish port",
852           "required" : false,
853           "type" : "string"
854         }, {
855           "name" : "routeWay",
856           "in" : "query",
857           "description" : "Route Way",
858           "required" : false,
859           "type" : "string",
860           "default" : "ip"
861         } ],
862         "responses" : {
863           "204" : {
864             "description" : "delete IuiRouteInfo succeed "
865           },
866           "404" : {
867             "description" : "IuiRouteInfo not found"
868           },
869           "500" : {
870             "description" : "delete IuiRouteInfo fail"
871           }
872         }
873       }
874     },
875     "/iuiRoute/{serviceName}/status/{status}" : {
876       "put" : {
877         "tags" : [ "iuiRoute" ],
878         "summary" : "update one iuiRoute  status by serviceName ",
879         "description" : "",
880         "operationId" : "updateIuiRouteStatus",
881         "produces" : [ "application/json" ],
882         "parameters" : [ {
883           "name" : "serviceName",
884           "in" : "path",
885           "description" : "iuiRoute serviceName",
886           "required" : true,
887           "type" : "string"
888         }, {
889           "name" : "host",
890           "in" : "query",
891           "description" : "iuiRoute host",
892           "required" : false,
893           "type" : "string"
894         }, {
895           "name" : "status",
896           "in" : "path",
897           "description" : "iuiRoute status,1:abled  0:disabled",
898           "required" : true,
899           "type" : "string"
900         }, {
901           "name" : "publish_port",
902           "in" : "query",
903           "description" : "iuiRoute Publish port",
904           "required" : false,
905           "type" : "string"
906         }, {
907           "name" : "routeWay",
908           "in" : "query",
909           "description" : "Route Way",
910           "required" : false,
911           "type" : "string",
912           "default" : "ip"
913         } ],
914         "responses" : {
915           "201" : {
916             "description" : "successful operation",
917             "schema" : {
918               "$ref" : "#/definitions/IuiRouteInfo"
919             }
920           },
921           "404" : {
922             "description" : "IuiRouteInfo not found"
923           },
924           "422" : {
925             "description" : "Unprocessable IuiRouteInfo Entity "
926           },
927           "500" : {
928             "description" : "update IuiRouteInfo status fail"
929           }
930         }
931       }
932     }
933   },
934   "definitions" : {
935     "ApiRouteInfo" : {
936       "type" : "object",
937       "required" : [ "servers", "serviceName", "url", "version" ],
938       "properties" : {
939         "serviceName" : {
940           "type" : "string"
941         },
942         "url" : {
943           "type" : "string",
944           "example" : "/test",
945           "description" : "Target Service URL,start with /"
946         },
947         "control" : {
948           "type" : "string",
949           "example" : "0",
950           "description" : "[control Range] 0:default   1:readonly  2:hidden ",
951           "enum" : [ "0", "1", "2" ]
952         },
953         "status" : {
954           "type" : "string",
955           "example" : "1",
956           "description" : "[status] 1:abled    0:disabled ",
957           "enum" : [ "0", "1" ]
958         },
959         "visualRange" : {
960           "type" : "string",
961           "example" : "1",
962           "description" : "[visual Range]interSystem:0,inSystem:1",
963           "enum" : [ "0", "1" ]
964         },
965         "useOwnUpstream" : {
966           "type" : "string",
967           "example" : "0",
968           "description" : "[LB Policy]non_ip_hash:0,ip_hash:1",
969           "enum" : [ "0", "1" ]
970         },
971         "servers" : {
972           "type" : "array",
973           "items" : {
974             "$ref" : "#/definitions/RouteServer"
975           }
976         },
977         "host" : {
978           "type" : "string"
979         },
980         "namespace" : {
981           "type" : "string"
982         },
983         "publish_port" : {
984           "type" : "string"
985         },
986         "enable_ssl" : {
987           "type" : "boolean",
988           "default" : false
989         },
990         "consulServiceName" : {
991           "type" : "string"
992         },
993         "publishProtocol" : {
994           "type" : "string"
995         },
996         "version" : {
997           "type" : "string",
998           "example" : "v1"
999         },
1000         "apiJson" : {
1001           "type" : "string"
1002         },
1003         "apiJsonType" : {
1004           "type" : "string",
1005           "example" : "1",
1006           "description" : "[apiJson Type] 0:local file  1: remote file",
1007           "enum" : [ "0", "1" ]
1008         },
1009         "metricsUrl" : {
1010           "type" : "string"
1011         }
1012       }
1013     },
1014     "CustomRouteInfo" : {
1015       "type" : "object",
1016       "required" : [ "servers", "serviceName", "url" ],
1017       "properties" : {
1018         "serviceName" : {
1019           "type" : "string"
1020         },
1021         "url" : {
1022           "type" : "string",
1023           "example" : "/test",
1024           "description" : "Target Service URL,start with /"
1025         },
1026         "control" : {
1027           "type" : "string",
1028           "example" : "0",
1029           "description" : "[control Range] 0:default   1:readonly  2:hidden ",
1030           "enum" : [ "0", "1", "2" ]
1031         },
1032         "status" : {
1033           "type" : "string",
1034           "example" : "1",
1035           "description" : "[status] 1:abled    0:disabled ",
1036           "enum" : [ "0", "1" ]
1037         },
1038         "visualRange" : {
1039           "type" : "string",
1040           "example" : "1",
1041           "description" : "[visual Range]interSystem:0,inSystem:1",
1042           "enum" : [ "0", "1" ]
1043         },
1044         "useOwnUpstream" : {
1045           "type" : "string",
1046           "example" : "0",
1047           "description" : "[LB Policy]non_ip_hash:0,ip_hash:1",
1048           "enum" : [ "0", "1" ]
1049         },
1050         "servers" : {
1051           "type" : "array",
1052           "items" : {
1053             "$ref" : "#/definitions/RouteServer"
1054           }
1055         },
1056         "host" : {
1057           "type" : "string"
1058         },
1059         "namespace" : {
1060           "type" : "string"
1061         },
1062         "publish_port" : {
1063           "type" : "string"
1064         },
1065         "enable_ssl" : {
1066           "type" : "boolean",
1067           "default" : false
1068         },
1069         "consulServiceName" : {
1070           "type" : "string"
1071         },
1072         "publishProtocol" : {
1073           "type" : "string"
1074         }
1075       }
1076     },
1077     "DiscoverInfo" : {
1078       "type" : "object",
1079       "properties" : {
1080         "ip" : {
1081           "type" : "string"
1082         },
1083         "port" : {
1084           "type" : "integer",
1085           "format" : "int32"
1086         },
1087         "enabled" : {
1088           "type" : "boolean",
1089           "default" : false
1090         }
1091       }
1092     },
1093     "IuiRouteInfo" : {
1094       "type" : "object",
1095       "required" : [ "servers", "serviceName", "url" ],
1096       "properties" : {
1097         "serviceName" : {
1098           "type" : "string"
1099         },
1100         "url" : {
1101           "type" : "string",
1102           "example" : "/test",
1103           "description" : "Target Service URL,start with /"
1104         },
1105         "control" : {
1106           "type" : "string",
1107           "example" : "0",
1108           "description" : "[control Range] 0:default   1:readonly  2:hidden ",
1109           "enum" : [ "0", "1", "2" ]
1110         },
1111         "status" : {
1112           "type" : "string",
1113           "example" : "1",
1114           "description" : "[status] 1:abled    0:disabled ",
1115           "enum" : [ "0", "1" ]
1116         },
1117         "visualRange" : {
1118           "type" : "string",
1119           "example" : "1",
1120           "description" : "[visual Range]interSystem:0,inSystem:1",
1121           "enum" : [ "0", "1" ]
1122         },
1123         "useOwnUpstream" : {
1124           "type" : "string",
1125           "example" : "0",
1126           "description" : "[LB Policy]non_ip_hash:0,ip_hash:1",
1127           "enum" : [ "0", "1" ]
1128         },
1129         "servers" : {
1130           "type" : "array",
1131           "items" : {
1132             "$ref" : "#/definitions/RouteServer"
1133           }
1134         },
1135         "host" : {
1136           "type" : "string"
1137         },
1138         "namespace" : {
1139           "type" : "string"
1140         },
1141         "publish_port" : {
1142           "type" : "string"
1143         },
1144         "enable_ssl" : {
1145           "type" : "boolean",
1146           "default" : false
1147         },
1148         "consulServiceName" : {
1149           "type" : "string"
1150         },
1151         "publishProtocol" : {
1152           "type" : "string"
1153         }
1154       }
1155     },
1156     "RouteServer" : {
1157       "type" : "object",
1158       "required" : [ "ip", "port" ],
1159       "properties" : {
1160         "ip" : {
1161           "type" : "string"
1162         },
1163         "port" : {
1164           "type" : "string"
1165         },
1166         "weight" : {
1167           "type" : "integer",
1168           "format" : "int32"
1169         }
1170       }
1171     }
1172   }
1173 }