Adding SO Monitoring swagger json and yaml files
[so.git] / docs / api / swagger / SO_MONITORING_SWAGGER.json
1 {
2   "swagger": "2.0",
3   "info": {
4     "version": "3.1.2",
5     "title": "SO Monitoring APIs"
6   },
7   "tags": [
8     {
9       "name": "getProcessInstanceId"
10     },
11     {
12       "name": "getSingleProcessInstance"
13     },
14     {
15       "name": "getProcessDefinitionXml"
16     },
17     {
18       "name": "getActivityInstanceDetail"
19     },
20     {
21       "name": "getProcessInstanceVariables"
22     },
23     {
24       "name": "getInfraActiveRequests"
25     }
26   ],
27   "schemes": [
28     "http"
29   ],
30   "paths": {
31     "/so/monitoring/process-instance-id/{requestId}": {
32       "get": {
33         "tags": [
34           "getProcessInstanceId"
35         ],
36         "summary": "Get process instance ID for given request ID",
37         "description": "",
38         "operationId": "getProcessInstanceId",
39         "consumes": [
40           "application/json"
41         ],
42         "produces": [
43           "application/json",
44           "application/xml"
45         ],
46         "parameters": [
47           {
48             "name": "requestId",
49             "in": "path",
50             "required": true,
51             "type": "string",
52             "pattern": "^(?!\\s*$).+"
53           }
54         ],
55         "responses": {
56           "200": {
57             "description": "A ProcessInstanceIdDetail object",
58             "schema": {
59               "type": "object",
60               "properties": {
61                 "processInstanceId": {
62                   "type": "string",
63                   "description": "The process instance ID"
64                 }
65               }
66             }
67           },
68           "204": {
69             "description": "Unable to find process instance id for given request ID."
70           },
71           "400": {
72             "description": "Unable to find process instance id for given request ID."
73           },
74           "500": {
75             "description": "Unable to find process instance id for given request ID."
76           }
77         }
78       }
79     },
80     "/so/monitoring/process-instance/{processInstanceId}": {
81       "get": {
82         "tags": [
83           "getSingleProcessInstance"
84         ],
85         "summary": "Get process instance for given process instance ID",
86         "description": "",
87         "operationId": "getSingleProcessInstance",
88         "consumes": [
89           "application/json"
90         ],
91         "produces": [
92           "application/json",
93           "application/xml"
94         ],
95         "parameters": [
96           {
97             "name": "processInstanceId",
98             "in": "path",
99             "required": true,
100             "type": "string",
101             "pattern": "^(?!\\s*$).+"
102           }
103         ],
104         "responses": {
105           "200": {
106             "description": "A ProcessInstanceDetail object",
107             "schema": {
108               "type": "object",
109               "properties": {
110                 "processInstanceId": {
111                   "type": "string",
112                   "description": "The process instance ID"
113                 },
114                 "processDefinitionId": {
115                   "type": "string",
116                   "description": "The process definition ID"
117                 },
118                 "processDefinitionName": {
119                   "type": "string",
120                   "description": "The process definition name"
121                 },
122                 "superProcessInstanceId": {
123                   "type": "string",
124                   "description": "The super process instance ID"
125                 }
126               }
127             }
128           },
129           "204": {
130             "description": "Unable to find process instance for given process instance ID."
131           },
132           "400": {
133             "description": "Unable to find process instance for given process instance ID."
134           },
135           "500": {
136             "description": "Unable to find process instance  for given process instance ID."
137           }
138         }
139       }
140     },
141     "/so/monitoring/process-definition/{processDefinitionId}": {
142       "get": {
143         "tags": [
144           "getProcessDefinitionXml"
145         ],
146         "summary": "Get process definition for given process definition ID",
147         "description": "",
148         "operationId": "getProcessDefinitionXml",
149         "consumes": [
150           "application/json"
151         ],
152         "produces": [
153           "application/json",
154           "application/xml"
155         ],
156         "parameters": [
157           {
158             "name": "processDefinitionId",
159             "in": "path",
160             "required": true,
161             "type": "string",
162             "pattern": "^(?!\\s*$).+"
163           }
164         ],
165         "responses": {
166           "200": {
167             "description": "A ProcessDefinitionDetail object",
168             "schema": {
169               "type": "object",
170               "properties": {
171                 "processDefinitionId": {
172                   "type": "string",
173                   "description": "The process definition ID"
174                 },
175                 "processDefinitionXml": {
176                   "type": "string",
177                   "description": "The process definition XML"
178                 }
179               }
180             }
181           },
182           "204": {
183             "description": "Unable to find process definition xml for given process definition ID."
184           },
185           "400": {
186             "description": "Unable to find process definition xml for given process definition ID."
187           },
188           "500": {
189             "description": "Unable to find process definition xml for given process definition ID."
190           }
191         }
192       }
193     },
194     "/so/monitoring/activity-instance/{processInstanceId}": {
195       "get": {
196         "tags": [
197           "getActivityInstanceDetail"
198         ],
199         "summary": "Get activity instance details for given process instance ID",
200         "description": "",
201         "operationId": "getActivityInstanceDetail",
202         "consumes": [
203           "application/json"
204         ],
205         "produces": [
206           "application/json",
207           "application/xml"
208         ],
209         "parameters": [
210           {
211             "name": "processInstanceId",
212             "in": "path",
213             "required": true,
214             "type": "string",
215             "pattern": "^(?!\\s*$).+"
216           }
217         ],
218         "responses": {
219           "200": {
220             "description": "A ActivityInstanceDetail object",
221             "schema": {
222               "type": "array",
223               "items": {
224                 "properties": {
225                   "activityId": {
226                     "type": "string",
227                     "description": "The activity ID"
228                   },
229                   "activityName": {
230                     "type": "string",
231                     "description": "The activity name"
232                   },
233                   "activityType": {
234                     "type": "string",
235                     "description": "The activity type"
236                   },
237                   "processInstanceId": {
238                     "type": "string",
239                     "description": "The process instance ID"
240                   },
241                   "calledProcessInstanceId": {
242                     "type": "string",
243                     "description": "The sub-process instance ID"
244                   },
245                   "startTime": {
246                     "type": "string",
247                     "description": "The process execution start time"
248                   },
249                   "endTime": {
250                     "type": "string",
251                     "description": "The process execution end time"
252                   },
253                   "durationInMilliseconds": {
254                     "type": "string",
255                     "description": "The process execution duration in ms"
256                   }
257                 }
258               }
259             }
260           },
261           "204": {
262             "description": "Unable to find process instance variables for given process instance ID."
263           },
264           "400": {
265             "description": "Unable to find process instance variables for given process instance ID."
266           },
267           "500": {
268             "description": "Unable to find process instance variables for given process instance ID."
269           }
270         }
271       }
272     },
273     "/so/monitoring/variable-instance/{processInstanceId}": {
274       "get": {
275         "tags": [
276           "getProcessInstanceVariables"
277         ],
278         "summary": "Get process instance variables for given process instance ID",
279         "description": "",
280         "operationId": "getProcessInstanceVariables",
281         "consumes": [
282           "application/json"
283         ],
284         "produces": [
285           "application/json",
286           "application/xml"
287         ],
288         "parameters": [
289           {
290             "name": "processInstanceId",
291             "in": "path",
292             "required": true,
293             "type": "string",
294             "pattern": "^(?!\\s*$).+"
295           }
296         ],
297         "responses": {
298           "200": {
299             "description": "A ProcessInstanceVariableDetail object",
300             "schema": {
301               "type": "object",
302               "properties": {
303                 "name": {
304                   "type": "string",
305                   "description": "The variable name"
306                 },
307                 "value": {
308                   "type": "object",
309                   "description": "The variable value"
310                 },
311                 "type": {
312                   "type": "string",
313                   "description": "The variable type"
314                 }
315               }
316             }
317           },
318           "204": {
319             "description": "Unable to find activity instance for given process instance ID."
320           },
321           "400": {
322             "description": "Unable to find activity instance for given process instance ID."
323           },
324           "500": {
325             "description": "Unable to find activity instance for given process instance ID."
326           }
327         }
328       }
329     },
330     "/so/monitoring/v1/search": {
331       "post": {
332         "tags": [
333           "getInfraActiveRequests"
334         ],
335         "summary": "Search infra active request for given parameter map and parameters",
336         "description": "",
337         "operationId": "getInfraActiveRequests",
338         "consumes": [
339           "application/json"
340         ],
341         "produces": [
342           "application/json",
343           "application/xml"
344         ],
345         "parameters": [
346           {
347             "in": "body",
348             "name": "filters",
349             "required": true,
350             "schema": {
351               "type": "object",
352               "additionalProperties": {
353                 "type": "string"
354               }
355             }
356           },
357           {
358             "in": "query",
359             "name": "from",
360             "required": true,
361             "type": "number"
362           },
363           {
364             "in": "query",
365             "name": "to",
366             "required": true,
367             "type": "number"
368           },
369           {
370             "in": "query",
371             "name": "maxResult",
372             "required": false,
373             "type": "number"
374           }
375         ],
376         "responses": {
377           "200": {
378             "description": "A SoInfraRequest object",
379             "schema": {
380               "type": "array",
381               "items": {
382                 "properties": {
383                   "requestId": {
384                     "type": "string",
385                     "description": "The request ID"
386                   },
387                   "serviceInstanceId": {
388                     "type": "string",
389                     "description": "The service instance ID"
390                   },
391                   "serviceIstanceName": {
392                     "type": "string",
393                     "description": "The service instance name"
394                   },
395                   "networkId": {
396                     "type": "string",
397                     "description": "The network ID"
398                   },
399                   "requestStatus": {
400                     "type": "string",
401                     "description": "The request status"
402                   },
403                   "serviceType": {
404                     "type": "string",
405                     "description": "The service type"
406                   },
407                   "startTime": {
408                     "type": "string",
409                     "description": "The process execution start time"
410                   },
411                   "endTime": {
412                     "type": "string",
413                     "description": "The process execution send time"
414                   }
415                 }
416               }
417             }
418           },
419           "204": {
420             "description": "Unable to find search request for given filter and parameters."
421           },
422           "400": {
423             "description": "Unable to find search request for given filter and parameters"
424           },
425           "500": {
426             "description": "Unable to find search request for given filter and parameters"
427           }
428         }
429       }
430     }
431   }
432 }